Bounded contact info thread pools

pull/194/merge
M66B 2 years ago
parent 500a1682e3
commit 213004bef6

@ -317,8 +317,12 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
private DateFormat TF; private DateFormat TF;
private DateFormat DTF; private DateFormat DTF;
private static final int processors =
Runtime.getRuntime().availableProcessors();
private static final ExecutorService executor = private static final ExecutorService executor =
Helper.getBackgroundExecutor(2, "differ"); Helper.getBackgroundExecutor(2, "differ");
private static final ExecutorService executorContactInfo =
Helper.getBackgroundExecutor(Math.max(1, processors / 2), "contact");
private static final int MAX_RECIPIENTS_COMPACT = 3; private static final int MAX_RECIPIENTS_COMPACT = 3;
private static final int MAX_RECIPIENTS_NORMAL = 7; private static final int MAX_RECIPIENTS_NORMAL = 7;
@ -1486,7 +1490,7 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
protected void onException(Bundle args, Throwable ex) { protected void onException(Bundle args, Throwable ex) {
Log.unexpectedError(parentFragment.getParentFragmentManager(), ex); Log.unexpectedError(parentFragment.getParentFragmentManager(), ex);
} }
}.setLog(false); }.setLog(false).setExecutor((executorContactInfo));
taskContactInfo.execute(context, owner, aargs, "message:avatar"); taskContactInfo.execute(context, owner, aargs, "message:avatar");
} else } else
bindContactInfo(message, info, addresses); bindContactInfo(message, info, addresses);

@ -100,11 +100,12 @@ public class ContactInfo {
private static Map<String, Lookup> emailLookup = new ConcurrentHashMap<>(); private static Map<String, Lookup> emailLookup = new ConcurrentHashMap<>();
private static final Map<String, ContactInfo> emailContactInfo = new HashMap<>(); private static final Map<String, ContactInfo> emailContactInfo = new HashMap<>();
private static final int processors =
Runtime.getRuntime().availableProcessors();
private static final ExecutorService executorLookup = private static final ExecutorService executorLookup =
Helper.getBackgroundExecutor(1, "contact"); Helper.getBackgroundExecutor(1, "contact");
private static final ExecutorService executorFavicon = private static final ExecutorService executorFavicon =
Helper.getBackgroundExecutor(0, "favicon"); Helper.getBackgroundExecutor(Math.max(1, processors / 2), "favicon");
private static final int GENERATED_ICON_SIZE = 96; // dp private static final int GENERATED_ICON_SIZE = 96; // dp
private static final int FAVICON_ICON_SIZE = 64; // dp private static final int FAVICON_ICON_SIZE = 64; // dp

Loading…
Cancel
Save