Selaa lähdekoodia

--update TaskJob-ScheduledExecutorService

zzy.zhiyuan.foxmail 8 vuotta sitten
vanhempi
commit
689bfcc3ba
1 muutettua tiedostoa jossa 3 lisäystä ja 2 poistoa
  1. 3 2
      src/main/java/com/ekexiu/portal/job/TaskJob.java

+ 3 - 2
src/main/java/com/ekexiu/portal/job/TaskJob.java

4
import java.text.ParseException;
4
import java.text.ParseException;
5
import java.text.SimpleDateFormat;
5
import java.text.SimpleDateFormat;
6
import java.util.Date;
6
import java.util.Date;
7
import java.util.concurrent.Executors;
8
import java.util.concurrent.ScheduledExecutorService;
7
import java.util.concurrent.ScheduledExecutorService;
9
import java.util.concurrent.TimeUnit;
8
import java.util.concurrent.TimeUnit;
10

9

11
import org.jfw.apt.annotation.Bean;
10
import org.jfw.apt.annotation.Bean;
12
import org.jfw.util.bean.AfterBeanFactory;
11
import org.jfw.util.bean.AfterBeanFactory;
13
import org.jfw.util.bean.BeanFactory;
12
import org.jfw.util.bean.BeanFactory;
13
import org.jfw.util.context.JfwAppContext;
14

14

15
@Bean
15
@Bean
16
public class TaskJob implements AfterBeanFactory {
16
public class TaskJob implements AfterBeanFactory {
17
	private ScheduledExecutorService service;
17
	
18
	
18
	@Override
19
	@Override
19
	public void handle(BeanFactory bf) throws Throwable {
20
	public void handle(BeanFactory bf) throws Throwable {
26
		long taskTime = task - System.currentTimeMillis();
27
		long taskTime = task - System.currentTimeMillis();
27
		taskTime = taskTime > 0 ? taskTime : delayTime + taskTime;
28
		taskTime = taskTime > 0 ? taskTime : delayTime + taskTime;
28
		
29
		
29
        ScheduledExecutorService service = Executors.newSingleThreadScheduledExecutor();
30
        this.service = JfwAppContext.getScheduledExecutorService();
30
        // 第二个参数为首次执行的延时时间,第三个参数为定时执行的间隔时间  
31
        // 第二个参数为首次执行的延时时间,第三个参数为定时执行的间隔时间  
31
		service.scheduleAtFixedRate(tje, taskTime, delayTime, TimeUnit.MILLISECONDS);
32
		service.scheduleAtFixedRate(tje, taskTime, delayTime, TimeUnit.MILLISECONDS);
32
//		service.scheduleAtFixedRate(ultje, taskTime, delayTime, TimeUnit.MILLISECONDS);
33
//		service.scheduleAtFixedRate(ultje, taskTime, delayTime, TimeUnit.MILLISECONDS);