|
|
|
@ -171,7 +171,7 @@ public class JobScheduleHelper {
|
|
|
|
|
|
|
|
|
|
// align second
|
|
|
|
|
try {
|
|
|
|
|
TimeUnit.MILLISECONDS.sleep(System.currentTimeMillis()%1000 );
|
|
|
|
|
TimeUnit.MILLISECONDS.sleep(1000 - System.currentTimeMillis()%1000 );
|
|
|
|
|
} catch (InterruptedException e) {
|
|
|
|
|
if (!toStop) {
|
|
|
|
|
logger.error(e.getMessage(), e);
|
|
|
|
@ -181,7 +181,6 @@ public class JobScheduleHelper {
|
|
|
|
|
int lastSecond = -1;
|
|
|
|
|
while (!toStop) {
|
|
|
|
|
|
|
|
|
|
long start = System.currentTimeMillis();
|
|
|
|
|
try {
|
|
|
|
|
// second data
|
|
|
|
|
List<Integer> ringItemData = new ArrayList<>();
|
|
|
|
@ -219,11 +218,10 @@ public class JobScheduleHelper {
|
|
|
|
|
logger.error(">>>>>>>>>>> xxl-job, JobScheduleHelper#ringThread error:{}", e);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
long cost = System.currentTimeMillis() - start;
|
|
|
|
|
|
|
|
|
|
// next second, align second
|
|
|
|
|
try {
|
|
|
|
|
TimeUnit.MILLISECONDS.sleep(1000-cost);
|
|
|
|
|
TimeUnit.MILLISECONDS.sleep(1000 - System.currentTimeMillis()%1000);
|
|
|
|
|
} catch (InterruptedException e) {
|
|
|
|
|
if (!toStop) {
|
|
|
|
|
logger.error(e.getMessage(), e);
|
|
|
|
|