摘要:
13、守护线程 daemon 1、线程分为守护线程,用户线程 2、虚拟机必须确保用户线程执行完成 3、虚拟机不用等守护线程执行完成 package com.testthread1; import org.w3c.dom.ls.LSOutput; import java.security.spec.R 阅读全文
摘要:
12、线程优先级 priority package com.testthread1; /** * 1、currentThread()方法返回正在被执行的线程的信息 * */ public class TestPrioriy { public static void main(String[] arg 阅读全文
摘要:
11、线程状态 package com.testthread1; public class TestThread { public static void main(String[] args) { //线程使用lambda表达式 Thread thread = new Thread(()->{ f 阅读全文
摘要:
10、线程强制执行jion package com.testthread1; public class TestJion implements Runnable{ @Override public void run() { for (int i = 0; i < 100; i++) { System 阅读全文
摘要:
线程礼让: 1、让正在执行的线程为暂停,但不阻塞; 2、让状态转为就绪 3、让cpu重写调度,礼让不一定成功; Thread.currentThread()获取当前线程的引用 package com.testthread1; import org.w3c.dom.ls.LSOutput; publi 阅读全文
摘要:
8、线程休眠 每个对象都有一把锁,sleep不会释放锁; package com.testthread1; public class TestThread3 implements Runnable{ private int ticketNums = 10 ; @Override public voi 阅读全文
摘要:
lamda表达式: 1、避免匿名内部类过多 2、让代码简洁 3、去掉没有意义的代码,保留核心逻辑 函数式接口:只包含一个抽象方法,被成为函数式接口 package com.com.test; import jdk.dynalink.beans.StaticClass; /** * 推导lambda表 阅读全文
摘要:
5、静态代理模式 /** * 1、真实对象和代理对象实现同一个接口; * 2、代理对象,代理真实角色; */public class StaticProxy { public static void main(String[] args) { //真实结婚对象 Person person = new 阅读全文
摘要:
线程不安全 public class TestThread3 implements Runnable{ private int ticketNums = 10 ; @Override public void run() { while (true){ if (ticketNums==0){ brea 阅读全文
摘要:
UDP是面向无连接的,对于服务器和客户端来说只有一个socket,只需要确定目的IP和Port(dst ip 和dsp port),把数据都发送给这一个socket,所以采用二元组就可以确定一个socket; TCP是面向连接的,对于服务器和客户端来说可能会建立了多个socket,需要源ip和por 阅读全文