把分布在不同地理位置的具有独立功能的计算机,通过通信设备和网络连接起来,最终实现资源共享和信息传递。
网络编程的目的:就是用来实现网络互连的不同计算机上运行的程序间可以进行数据交换。
网络通信要素:IP、端口号、通信协议。
IP:计算机地址。
端口号:与计算机软件上有关。
通信协议:约定好的通信双方如何发送数据有关(高校传输)。
线程 常用方法:
void start() 启动线程
final void getName() 设置线程名称
final String getName() 返回线程名称
final void setPriority(int newPriority) 设置线程优先级
final int getPriority() 返回线程优先级
final void join() throws InterruptedException 等待线程结束
static Thread currentThread() 返回正在执行的线程对象的引用
static void sleep(long millis) throws InterruptedException 让正在执行的线程暂停时间由millis指定
新建、就绪、运行、阻塞、死亡。
新建:当一个Thread类或其子类的对象被声并创建时,新生线程对象的状态。
就绪:处于新建的状态的线程被start()后,将进入线程队列等待CPU时间片,此时它已具备了运 行条件,只是没用被分配到CPU资源。
运行:当就绪的线程被调度并获得CPU资源时,run()方法定义了线程的操作和功能。
阻塞:在某种特殊情况下,被人为挂起或执行输入输出操作时,让出CPU并临时中止了自己执行 ,进入阻塞状态。
死亡:线程完成了自己的全部工作或被提前强制性中止、因为异常而结束。
多线程程序同时执行多个操作多个任务,后运行任务。
优点:快速执行多个操作任务。节约时间。
缺点:线程也是程序,程序越多,占用内存越多。
多线程需要协调和管理,所以需要CPU时间跟踪线程。
线程之间共享资源的访问会互相影响,必须解决竞争使用共享资源问题。
本质:CPU多核,理论上可以同时访问多个线程。
并行:在同一时间点上,同时做多件事情。
并发:在一段时间内依次做。



