排序
java引发死锁的四种情况
四种情况 1、交叉锁导致程序死锁:比如线程A持有R1的锁等待R2的锁,线程B持有R2的锁等待R1的锁 2、内存不足:比如两个线程T1和T2,T1已获取10MB内存,T2获取了15MB内存,T1和T2都需要获取30MB内...
java setPriority()设置优先级
说明 1、设置优先级只是很大程度上让某个线程尽可能获得比较多的执行机会,也就是让线程自己尽可能被操作系统调度,而不是设置了高优先级就一定优先运行,或者说优先级高的线程比优先级低的线程...
java isInterrupted()如何判断线程
说明 1、isInterrupted()可以判断当前线程是否被中断,仅仅是对interrupt()标识的一个判断,并不会影响标识发生任何改变2、调用interrupt()的时候会设置内部的一个叫interrupt flag的标识)。 ...
java interrupt()打断阻塞的操作
说明 1、调用interrupt()可以打断阻塞,打断阻塞并不等于线程的生命周期结束,仅仅是打断了当前线程的阻塞状态。 2、一旦在阻塞状态下被打断,就会抛出一个InterruptedException的异常,这个异...
java中使用全局变量终止线程
说明 1、使用自定义的全局变量终止线程。终止方法比较温柔,在拿到终止指令后,需要执行完当前的任务才会终止线程。 使用全局变量方式“终止说话”后又有一次“正在说话”。 2、全局变量控制线...
java中UDP接收数据的步骤
接受数据 1、创建接收端的Socket对象 (DatagramSocket) 2、创建一个数据包,用于接收数据 3、调用DatagramSocket对象的方法接收数据 4、解析数据包,并把数据在控制台显示 5、关闭接收端 实例...
java中并发和并行的概念
由于任务数量远远超过CPU核心数量,因此操作系统会自动把任务调度到每个核心上执行。 1、概念 并发:多个进程在一个CPU下采用时间片轮转方式,在一段时间内,让多个进程得以推进,类似“雨露均...
java start()和run()的区别
1、概念区别 start():产生线程对象后,调用start()方法启动线程,线程处于运行状态RUNNABLE中的Ready就绪状态中,此时线程等待被CPU调度,调度后再执行run()方法,使用start()方法启动线程,真...
java中TCP通信是什么
1、说明 TCP通信协议是一种可靠的网络协议,它在通信的两端各建立一个Socket对象,从而在通信的两端形成网络虚拟链路,一旦建立了虚拟的网络链路,两端的程序就可以通过虚拟链路进行通信。 Java...
java中UDP如何发送数据
1、发送步骤 创建发送端的Socket对象(DatagramSocket) 创建数据,并把数据打包 调用DatagramSocket对象的方法发送数据 关闭发送端 2、实例 importjava.net.*; importjava.io.*; classSend { p...



























