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 | } |