Add words priority queue pool

Change-Id: I152df7b876a1756b69ded2ca4fb3ee26b38c971f
diff --git a/native/src/dictionary.cpp b/native/src/dictionary.cpp
index 55358ec..e3673d4 100644
--- a/native/src/dictionary.cpp
+++ b/native/src/dictionary.cpp
@@ -39,7 +39,8 @@
         }
     }
     mCorrection = new Correction(typedLetterMultiplier, fullWordMultiplier);
-    mWordsPriorityQueue = new WordsPriorityQueue(maxWords, maxWordLength);
+    mWordsPriorityQueuePool = new WordsPriorityQueuePool(
+            maxWords, SUB_QUEUE_MAX_WORDS, maxWordLength);
     mUnigramDictionary = new UnigramDictionary(mDict, typedLetterMultiplier, fullWordMultiplier,
             maxWordLength, maxWords, maxAlternatives, IS_LATEST_DICT_VERSION);
     mBigramDictionary = new BigramDictionary(mDict, maxWordLength, maxAlternatives,
@@ -48,7 +49,7 @@
 
 Dictionary::~Dictionary() {
     delete mCorrection;
-    delete mWordsPriorityQueue;
+    delete mWordsPriorityQueuePool;
     delete mUnigramDictionary;
     delete mBigramDictionary;
 }