diff options
author | 2015-02-17 15:12:05 -0800 | |
---|---|---|
committer | 2015-02-19 11:40:57 -0800 | |
commit | 0b03f13cabec84d2d841fde47ce9fec0d531b6a1 (patch) | |
tree | 5cc14dea6693025f25d279dd59140c04d0d7495f /java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java | |
parent | 95711bfcee07d848883316cf07439408f5b332a1 (diff) | |
download | latinime-0b03f13cabec84d2d841fde47ce9fec0d531b6a1.tar.gz latinime-0b03f13cabec84d2d841fde47ce9fec0d531b6a1.tar.xz latinime-0b03f13cabec84d2d841fde47ce9fec0d531b6a1.zip |
Sanitize the usage of executors.
There should be 1 executor each for static and dynamic language models.
This prevents too many dynamic LM updates from running in parallel,
competing for resources.
Change-Id: I8ec439e0ea2d92fba275bc20a0b8c9193346a0c1
Diffstat (limited to 'java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java index 8c780027b..064d79b3c 100644 --- a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java +++ b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java @@ -164,12 +164,11 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { } private void asyncExecuteTaskWithWriteLock(final Runnable task) { - asyncExecuteTaskWithLock(mLock.writeLock(), mDictName /* executorName */, task); + asyncExecuteTaskWithLock(mLock.writeLock(), task); } - private static void asyncExecuteTaskWithLock(final Lock lock, final String executorName, - final Runnable task) { - ExecutorUtils.getExecutor(executorName).execute(new Runnable() { + private static void asyncExecuteTaskWithLock(final Lock lock, final Runnable task) { + ExecutorUtils.getExecutorForDynamicLanguageModelUpdate().execute(new Runnable() { @Override public void run() { lock.lock(); @@ -663,7 +662,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { final String dictName = mDictName; final File dictFile = mDictFile; final AsyncResultHolder<DictionaryStats> result = new AsyncResultHolder<>(); - asyncExecuteTaskWithLock(mLock.readLock(), dictName /* executorName */, new Runnable() { + asyncExecuteTaskWithLock(mLock.readLock(), new Runnable() { @Override public void run() { final BinaryDictionary binaryDictionary = getBinaryDictionary(); @@ -714,7 +713,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { reloadDictionaryIfRequired(); final String tag = TAG; final String dictName = mDictName; - asyncExecuteTaskWithLock(mLock.readLock(), "dumpAllWordsForDebug", new Runnable() { + asyncExecuteTaskWithLock(mLock.readLock(), new Runnable() { @Override public void run() { Log.d(tag, "Dump dictionary: " + dictName + " for " + mLocale); @@ -752,7 +751,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { public WordProperty[] getWordPropertiesForSyncing() { reloadDictionaryIfRequired(); final AsyncResultHolder<WordProperty[]> result = new AsyncResultHolder<>(); - asyncExecuteTaskWithLock(mLock.readLock(), "sync-read", new Runnable() { + asyncExecuteTaskWithLock(mLock.readLock(), new Runnable() { @Override public void run() { final ArrayList<WordProperty> wordPropertyList = new ArrayList<>(); |