Commit fc82a963ad1645472d8d54b0a6b93f2843f18300
1 parent
e7154f2b
Exists in
master
定时任务 并发 bug解决
Showing
2 changed files
with
14 additions
and
8 deletions
Show diff stats
cloud/quartz/src/main/java/com/sincere/quartz/job/SyncJob.java
@@ -20,7 +20,7 @@ public class SyncJob { | @@ -20,7 +20,7 @@ public class SyncJob { | ||
20 | @Autowired | 20 | @Autowired |
21 | YXYReadService yxyReadService ; | 21 | YXYReadService yxyReadService ; |
22 | 22 | ||
23 | - @Scheduled(cron = "0 0 22 * * ? ") | 23 | + @Scheduled(cron = "30 10 22 * * ? ") |
24 | public void Sync(){ | 24 | public void Sync(){ |
25 | //翼校通的同步 之后还有钉钉的同步等等 | 25 | //翼校通的同步 之后还有钉钉的同步等等 |
26 | yxyReadService.sync(); | 26 | yxyReadService.sync(); |
cloud/quartz/src/main/java/com/sincere/quartz/third/yixueyun/YXYReadService.java
@@ -98,14 +98,11 @@ public class YXYReadService { | @@ -98,14 +98,11 @@ public class YXYReadService { | ||
98 | for(String schoolId : schoolList){ | 98 | for(String schoolId : schoolList){ |
99 | pool.execute(initSchool(schoolId)); | 99 | pool.execute(initSchool(schoolId)); |
100 | } | 100 | } |
101 | - try { | ||
102 | - boolean loop = true; | ||
103 | - do { //等待所有任务完成 | ||
104 | - loop = !pool.awaitTermination(2, TimeUnit.SECONDS); //阻塞,直到线程池里所有任务结束 | ||
105 | - } while(loop); | ||
106 | - } catch (InterruptedException e) { | ||
107 | - e.printStackTrace(); | 101 | + pool.shutdown(); |
102 | + while (!pool.isTerminated()) { | ||
103 | + // 等待所有子线程结束,才退出主线程 | ||
108 | } | 104 | } |
105 | + logger.info("------------------当天更新完成"); | ||
109 | } | 106 | } |
110 | 107 | ||
111 | 108 | ||
@@ -138,8 +135,17 @@ public class YXYReadService { | @@ -138,8 +135,17 @@ public class YXYReadService { | ||
138 | student.setAccount(object.get("account").toString()); | 135 | student.setAccount(object.get("account").toString()); |
139 | student.setName(object.get("name").toString()); | 136 | student.setName(object.get("name").toString()); |
140 | student.setUserId(object.get("userID").toString()); | 137 | student.setUserId(object.get("userID").toString()); |
138 | + }catch (Exception e){ | ||
139 | + } | ||
140 | + try{ | ||
141 | student.setCardID(object.get("cardID").toString()); | 141 | student.setCardID(object.get("cardID").toString()); |
142 | + }catch (Exception e){ | ||
143 | + } | ||
144 | + try{ | ||
142 | student.setCardID2(object.get("cardID2").toString()); | 145 | student.setCardID2(object.get("cardID2").toString()); |
146 | + }catch (Exception e){ | ||
147 | + } | ||
148 | + try{ | ||
143 | student.setCardID3(object.get("cardID3").toString()); | 149 | student.setCardID3(object.get("cardID3").toString()); |
144 | }catch (Exception e){ | 150 | }catch (Exception e){ |
145 | } | 151 | } |