本文共 479 字,大约阅读时间需要 1 分钟。
进程是资源分配的最小单位,线程是CPU调度的最小单位。
进程拥有自己的资源空间,没启动一个进程,系统就会为它分配地址空间;而线程与CPU资源分配无关,多个线程共享同一进程内的资源,使用相同的地址空间。 一个进程可以包含若干个线程。一个进程可以开启的线程受可用内存限制
一个进程可以创建的线程数由可用虚拟空间和线程的栈的大小共同决定,只要虚拟空间足够,那么新线程的建立就会成功。如果需要创建超过2K以上的线程,减小你线程栈的大小就可以实现了,虽然在一般情况下,你不需要那么多的线程。线程间通信的模型有两种:共享内存和消息传递。
以下是Java中 1.volatile(共享内存的思想) 2.使用Object类的wait() 和 notify() 方法。配合synchronized方法 3.使用JUC工具类 CountDownLatch 4.使用 ReentrantLock 结合 Condition 5.LockSupport实现线程间的阻塞和唤醒转载地址:http://yzjzk.baihongyu.com/