线程优先级高,只是权重高,获得CPU调度的概率高,并不是一定排前面package com.chenxb.myThread;public class TestPriority {
public class MyRunnable implements Runnable { @Override public void run() { for (int i = 0; i < 1000; i++) {
静态代理总结:1,真实对象和代理对象都要实现同一接口2,代理对象要代理真实角色3,代理对象可以做很多真实对象做不了的事情4,真实对象专注做自己的核心业务public class StaticProxy { public static void main(String[] args) {//
线程状态
停止线程1,建议用标志停止,设立一个标志位2,不要用stop或destory等过时方法,可能存在BUGpackage com.chenxb.myThread;/*停止线程1,建议用标志停止,设立一个标志位2,不要用stop或destory等过时方法,可能存在BUG
前台页面访问,延时10秒后显示package com.chenxb.mySpringboot.controller;import org.springframework.web.bind.annotat
礼让不一定能成功,原理是让CPU重新调度package com.chenxb.myThread;//线程礼让public class testYield implements Runna
package com.chenxb.myThread;public class TestJoin implements Runnable { @Override public void run() {
守护线程Daemon,也称“服务线程”1,线程分为:用户线程(默认false),守护线程(true)2,JVM必须确保线程执行完毕3,JVM不用等待守护线程执行完毕4,守护线程的优先级比较低,用于为系统中的其它对象和线程提供服务生命周期:守护进程是运行在后台的一种特殊进程
静态代理总结:1,真实对象和代理对象都要实现同一接口2,代理对象要代理真实角色3,代理对象可以做很多真实对象做不了的事情4,真实对象专注做自己的核心业务Thread实现过程,其实就是静态代理的实现过程:1,用一个类去实现Runnable接口(真实对象)
package com.chenxb.myThread;class MainState { public static void main(String[] args) { Thread thread = new Thread(() -> {
线程同步:同一进程的多个线程共享同一块存储空间解决冲突:访问时,加入Synchronized 锁机制,当一个线程获得排他锁,其他线程就必须等待释放存在问题:1,一个线程持有锁,会导致其他线程挂起2,性能问题:加锁,释放锁,会导致较多上下文切换和调度延时
死锁演示代码public class TestDeadLock { static Object a = new Object(); static Object b = new Object()
synchronized写法Lock写法public class TestReentrantLock { public static void main(String[] args) { Lock lock=new ReentrantLock();
可取消的异步计算。利用开始和取消计算的方法、查询计算是否完成的方法和获取计算结果的方法,此类提供了对 Future 的基本实现。仅在计算完成时才能获取结果;如果计算尚未完成,则阻塞 get 方法。一旦计算完成,就不能再重新开始或取消计算。就是开辟一
问题,中间线程还没走完,最后的线程已经完成public class Problem { public static void main(String[] args){ //问题,中间线程还没走完
volitile修饰Map说明map是不断变化的
ThreadPoolExecutor参数说明corePoolSize(核心或者常驻,比如银行有10个窗口,平常只开放5个)maximumPoolSize(最大线程数量,银行有10个窗口)keepAliveTime(银行有10个窗口,只开放5个,忽然来了很多人,临时开放很多接口,结束后恢复常驻线
一个计数信号量。从概念上讲,信号量维护了一个许可集。如有必要,在许可可用前会阻塞每一个 acquire(),然后再获取该许可。每个 release() 添加一个许可,从而可能释放一个正在阻塞的获取者。但是,不使用实际的许可对象,Semaphore 只对可
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号