虚假唤醒
虚假唤醒 class A { public static void main(String[] args) { Data data = new Data(); // +1 new Thread(() -> { for (int i = 0; i < 10; i++) { ...
虚假唤醒 class A { public static void main(String[] args) { Data data = new Data(); // +1 new Thread(() -> { for (int i = 0; i < 10; i++) { ...
线程停止 // 建议线程正常停止,利用次数,不建议死循环 // 建议使用标志位 // 不要使用stop或destory等jdk不建议使用的方法 public class MyStop implements Runnable{ private boolean flag = true; @Override public void run() { int...
线程 一个进程中若开辟多个线程,线程的运行由调度器控制,先后顺序不能人为干预。 实现方式 继承 Thread类 调用run方法,只有主线程一条路 调用start方法,主线程和子线程...
Lock锁 源码 Lock public interface Lock { void lock(); void lockInterruptibly() throws InterruptedException; boolean tryLock(); boolean tryLock(long time, TimeUnit unit) throws I...
JUC cpu多核 public class Test1 { public static void main(String[] args) { // 获取cpu核数 // cpu密集型 io密集型 System.out.println(Runtime.getRuntime().availableProcessors()...
通过枚举、工厂模式和策略模式来避免大量的if-else语句。通过定义角色操作接口和实现类,使用不同模式来管理角色的操作逻辑。
专注于对象之间的交互与职责分配。常见的行为型模式包括观察者模式、策略模式和命令模式,旨在提升系统的可扩展性和灵活性。
用于处理类或对象的组合,关注它们如何相互协作。常见结构型模式有适配器模式、装饰者模式和代理模式,旨在提高系统的灵活性和可维护性。
关注对象的创建过程,旨在提高对象创建的灵活性和复用性。常见的创建型模式有单例模式、工厂模式和抽象工厂模式,适用于不同的对象创建需求。
单一职责原则、开闭原则、里氏替换原则、接口隔离原则、依赖倒转原则、合成复用原则和迪米特法则。