扫码关注官方订阅号
我有一堆任务,把这些任务提交到线程池的任务队列中,如果队列满了就先不提交。这时线程池中的线程从任务队列中提取任务并开始执行(假设共有5个固定线程),一个线程执行完任务后继续从任务队列中领取任务并执行,任务队列中少了一个任务,这时我们再向任务队列中提交一个任务
小伙看你根骨奇佳,潜力无限,来学PHP伐。
本来就是被复用的,被线程池管理的,自己不用控制。
class MyTask implements Runnable{ @Override public void run() { // TODO Auto-generated method stub //执行业务逻辑 } } public class MyThread extends Thread { long minPrime; private boolean shouldStopFlag=false; private long checkIntervalTime; public MyThread(long checkIntervalTimeIn){ this.checkIntervalTime=checkIntervalTimeIn; } public void run() { while(!shouldStopFlag){ //如果获取不到.线程等待指定的时间间隔后,再去获取执行任务 Runnable nexRunnable=getNextTask(); if(nexRunnable!=null){ nexRunnable.run(); }else{ try { Thread.sleep(checkIntervalTime); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } private Runnable getNextTask(){ //获取下一个需要至执行的任务,可以队列等数据结合中获取 return new MyTask(); } }
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
本来就是被复用的,被线程池管理的,自己不用控制。