1、发送步骤创建发送端的Socket对象(DatagramSocket)创建数据,并把数据打包调用DatagramSocket对象的方法发送数据关闭发送端2、实例import ja…
接受数据1、创建接收端的Socket对象(DatagramSocket)2、创建一个数据包,用于接收数据3、调用DatagramSocket对象的方法接收数据4、解析数据包,并把数…
1、说明TCP通信协议是一种可靠的网络协议,它在通信的两端各建立一个Socket对象,从而在通信的两端形成网络虚拟链路,一旦建立了虚拟的网络链路,两端的程序就可以通过虚拟链路进行通…
由于任务数量远远超过CPU核心数量,因此操作系统会自动把任务调度到每个核心上执行。1、概念并发:多个进程在一个CPU下采用时间片轮转方式,在一段时间内,让多个进程得以推进,类似“雨…
1、概念区别start():产生线程对象后,调用start()方法启动线程,线程处于运行状态RUNNABLE中的Ready就绪状态中,此时线程等待被CPU调度,调度后再执行run(…
说明1、使用自定义的全局变量终止线程。终止方法比较温柔,在拿到终止指令后,需要执行完当前的任务才会终止线程。使用全局变量方式“终止说话”后又有一次“正在说话”。2、全局变量控制线程…
区别1、sleep()会导致当前线程暂停指定的时间,没有CPU时间片的消耗2、yield()只是对CPU调度器的一个提示,如果CPU调度器没有忽略这个提示,会导致线程上下文的切换s…
说明1、设置优先级只是很大程度上让某个线程尽可能获得比较多的执行机会,也就是让线程自己尽可能被操作系统调度,而不是设置了高优先级就一定优先运行,或者说优先级高的线程比优先级低的线程…
说明1、调用interrupt()可以打断阻塞,打断阻塞并不等于线程的生命周期结束,仅仅是打断了当前线程的阻塞状态。2、一旦在阻塞状态下被打断,就会抛出一个InterruptedE…
说明1、isInterrupted()可以判断当前线程是否被中断,仅仅是对interrupt()标识的一个判断,并不会影响标识发生任何改变2、调用interrupt()的时候会设置…