线程
文章平均质量分 79
骑士999111
这个作者很懒,什么都没留下…
展开
-
对象加锁原理
每个对象都有一个对象头,叫做mark word,以32位虚拟机为例,64为虚拟机的mark word是64位。原创 2023-11-02 15:38:18 · 97 阅读 · 0 评论 -
线程状态说明
线程原创 2022-09-15 08:56:16 · 464 阅读 · 0 评论 -
线程池ThreadPoolExecutor 的使用
由于该队列的近似无界性,当线程池中线程数量达到corePoolSize后,再有新任务进来,会一直存入该队列,而不会去创建新线程直到maxPoolSize,因此使用该工作队列时,参数maxPoolSize其实是不起作用的。也就是说新任务进来时,不会缓存,而是直接被调度执行该任务,如果没有可用线程,则创建新线程,如果线程数量达到maxPoolSize,则执行拒绝策略。:创建线程的工厂类,通常我们会自定义一个threadFactory设置线程的名称,这样我们就可以知道线程是由哪个工厂类创建的,可以快速定位。原创 2023-08-07 22:24:02 · 187 阅读 · 0 评论 -
线程常用方法
将一个线程添加到另一个线程中,如将t1线程添加到t2线程中,然后启动t1、t2线程(t1在前t2在后),此时t1线程执行完后再执行t2线程,如果t2在前则join失效,两个线程交替执行。sleep() 方法给其他线程运行机会时不考虑线程的优先级,yield() 方法只会给相同优先级或更高优先级的线程运行的机会;线程执行 sleep() 方法后进入阻塞状态,线程执行 yield() 方法转入就绪状态,可能马上又执行;yield方法让出CPU进入就绪状态,可能让出后马上给你就能接着执行。原创 2023-07-21 17:04:12 · 26 阅读 · 0 评论