博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
操作系统面试题 1
阅读量:755 次
发布时间:2019-03-23

本文共 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/

你可能感兴趣的文章