get methods should be quicker than loops, new thread avoids waiting for datamapper insert
This commit is contained in:
		
							parent
							
								
									511eb0e492
								
							
						
					
					
						commit
						296be21753
					
				| @ -266,6 +266,7 @@ public class Datahandler { | |||||||
|         } |         } | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     //synchronized | ||||||
|     public synchronized void updateMatrixes() { |     public synchronized void updateMatrixes() { | ||||||
|         refreshMatrixFromDB = false; |         refreshMatrixFromDB = false; | ||||||
|         if (stopwatch1.elapsed(TimeUnit.SECONDS) >= EXPIRE_TIME_IN_SECONDS1) { |         if (stopwatch1.elapsed(TimeUnit.SECONDS) >= EXPIRE_TIME_IN_SECONDS1) { | ||||||
| @ -280,14 +281,8 @@ public class Datahandler { | |||||||
|             LinkedHashMap<String, LinkedHashMap<String, Double>> LHMSMXLocal = lHMSMX; |             LinkedHashMap<String, LinkedHashMap<String, Double>> LHMSMXLocal = lHMSMX; | ||||||
|             int ij2 = 0; |             int ij2 = 0; | ||||||
|             for (String str : stringCachelocal.values()) { |             for (String str : stringCachelocal.values()) { | ||||||
|                 boolean updatepresent = false; |                 LinkedHashMap<String, Double> orDefault = LHMSMXLocal.getOrDefault(str, null); | ||||||
|                 for (String strlocal : LHMSMXLocal.keySet()) { |                 if (orDefault == null) { | ||||||
|                     if (strlocal.equals(str)) { |  | ||||||
|                         updatepresent = true; |  | ||||||
|                         break; |  | ||||||
|                     } |  | ||||||
|                 } |  | ||||||
|                 if (!updatepresent) { |  | ||||||
|                     selectUpdate = ij2; |                     selectUpdate = ij2; | ||||||
|                     break; |                     break; | ||||||
|                 } |                 } | ||||||
| @ -308,25 +303,17 @@ public class Datahandler { | |||||||
|                 boolean present = false; |                 boolean present = false; | ||||||
|                 LinkedHashMap<String, Double> orDefault = lHMSMX.getOrDefault(getStringCacheStr, null); |                 LinkedHashMap<String, Double> orDefault = lHMSMX.getOrDefault(getStringCacheStr, null); | ||||||
|                 if (orDefault != null) { |                 if (orDefault != null) { | ||||||
|                     Iterator<String> strDefaultsItr = orDefault.keySet().iterator(); |                     Double orDefault1 = orDefault.getOrDefault(str1, null); | ||||||
|                     while (strDefaultsItr.hasNext()) { |                     if (orDefault1 != null) { | ||||||
|                         String strkey = strDefaultsItr.next(); |                         present = true; | ||||||
|                         if (strkey.equals(str1)) { |  | ||||||
|                             present = true; |  | ||||||
|                             break; |  | ||||||
|                         } |  | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
|                 if (!present) { |                 if (!present) { | ||||||
|                     orDefault = lHMSMX.getOrDefault(str1, null); |                     orDefault = lHMSMX.getOrDefault(str1, null); | ||||||
|                     if (orDefault != null) { |                     if (orDefault != null) { | ||||||
|                         Iterator<String> strDefaultsItr = orDefault.keySet().iterator(); |                         Double orDefault1 = orDefault.getOrDefault(getStringCacheStr, null); | ||||||
|                         while (strDefaultsItr.hasNext()) { |                         if (orDefault1 != null) { | ||||||
|                             String strkey = strDefaultsItr.next(); |                             present = true; | ||||||
|                             if (strkey.equals(getStringCacheStr)) { |  | ||||||
|                                 present = true; |  | ||||||
|                                 break; |  | ||||||
|                             } |  | ||||||
|                         } |                         } | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
| @ -360,16 +347,19 @@ public class Datahandler { | |||||||
|                     matrixUpdateList.put(matrixUpdateList.size() + 1, SMX); |                     matrixUpdateList.put(matrixUpdateList.size() + 1, SMX); | ||||||
|                 } |                 } | ||||||
|             }); |             }); | ||||||
|             try { |             new Thread(() -> { | ||||||
|                 if (!matrixUpdateList.isEmpty()) { |                 try { | ||||||
|                     DataMapper.insertSementicMatrixes(matrixUpdateList); |                     if (!matrixUpdateList.isEmpty()) { | ||||||
|                     System.out.println("finished datamapper semetic insert"); |                         DataMapper.insertSementicMatrixes(matrixUpdateList); | ||||||
|  |                         System.out.println("finished datamapper semetic insert"); | ||||||
|  |                     } | ||||||
|  |                 } catch (CustomError ex) { | ||||||
|  |                     Logger.getLogger(Datahandler.class | ||||||
|  |                             .getName()).log(Level.SEVERE, null, ex); | ||||||
|                 } |                 } | ||||||
|             } catch (CustomError ex) { |             }).start(); | ||||||
|                 Logger.getLogger(Datahandler.class |  | ||||||
|                         .getName()).log(Level.SEVERE, null, ex); |  | ||||||
|             } |  | ||||||
|         } |         } | ||||||
|  | 
 | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     public synchronized void checkIfUpdateStrings(boolean hlStatsMsg) throws CustomError { |     public synchronized void checkIfUpdateStrings(boolean hlStatsMsg) throws CustomError { | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user