当前页面: 开发资料首页 → J2EE 专题 → java中如何实现按队列执行任务?
java中如何实现按队列执行任务?
摘要: java中如何实现按队列执行任务?
有A,B,C三个类,A会不断得发送任务给B,比如job1,job2,job3,B在接收到第一个job1后开始执行C中的复杂处理。在B执行job1的过程中,A会不断发送新任务,job2,job3。。。。,B只能在C执行完job1后,才开始执行job2。在java中如何实现??请高手指点。.NET中有callback机制,可以让C在执行完后,回调B中的方法,但java中不知怎么实现?请高手提供简单示例。可另开贴送300分。
用线程
首先再每来个任务的时候分配一个线程,你可以synchronize来修饰该方法,同时加上信号亮,执行的时候设置为true;在执行完毕后false这样,线程都会先判断是否为true,如果是则表示有任务在执行,然后你可以让线程等待
mark!
xuyang821225(CSDN账号) 说的不错。呵呵 支持一下。
他提到“synchronize”,这个表示线程安全,也就是说一个方法定义成synchronize后,就不会出现同时有2个或者更多的进程进入到方法中的同一个地方。
一个线程进入,其他的线程就会在外面等待
使用多线程就好
1. 生产者A和消费者B
2. 使用到关键资源C
看看线程部分的程序demo就好
to xuyang821225:
好心给段示例代码吧
xuyang821225(CSDN账号) 正确.用多线程和同步技术,这样的需求,很容易实现
谁能够贴上代码,谢谢,我也想看看效果.
关注一下
用线程池管理线程队列吧,那样的代码写出来看着舒服