进程和线程有何区别,Java是如何实现多线程的。
第1题:
下面关于进程、线程的说法正确的是()。
A.进程是程序的一次动态执行过程。一个进程在其执行过程中,可以产生多个线程——多线程,形成多条执行线索
B.线程是比进程更小的执行单位,是在一个进程中独立的控制流,即程序内部的控制流。线程本身不能自动运行,栖身于某个进程之中,由进程启动执行
C.Java多线程的运行与平台相关
D.对于单处理器系统,多个线程分时间片获取CPU或其他系统资源来运行。对于多处理器系统,线程可以分配到多个处理器中,从而真正的并发执行多任务
第2题:
网络编程中设计并发服务器,使用多进程 与 多线程 ,请问有什么区别?
1,进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。
2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。
两者都可以提高程序的并发度,提高程序运行效率和响应时间。
线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源管理和保护;而进程正相反。同时,线程适合于在SMP机器上运行,而进程则可以跨机器迁移。
答案二:
根本区别就一点:用多进程每个进程有自己的地址空间(address space),线程则共享地址空间。所有其它区别都是由此而来的:
1。速度:线程产生的速度快,线程间的通讯快、切换快等,因为他们在同一个地址空间内。
2。资源利用率:线程的资源利用率比较好也是因为他们在同一个地址空间内。
3。同步问题:线程使用公共变量/内存时需要使用同步机制还是因为他们在同一个地址空间内。
第3题:
在Java多线程程序中,run()方法的实现有两种方式:【 】和继承Thread类。
第4题:
关于多线程,下列哪个说法不正确?
A.多线程就是同时执行几个事件
B.多线程是将程序分为几个并行的子任务,由它们并发交叉执行
C.一个进程可产生多线程,形成执行流
D.Java语言支持多线程
第5题:
下列说法中,错误的一项是______。
A.线程有其产生、存在和消亡的过程
B.一个进程可以创建多个线程
C.Java需要利用外部的线程支持库来实现多线程
D.在Java语言中支持多线程
第6题:
多线程有几种实现方法?同步有几种实现方法?
多线程有两种实现方法,分别是继承Thread 类与实现Runnable 接口
同步的实现方面有两种,分别是synchronized,wait 与notify
wait():使一个线程处于等待状态,并且释放所持有的对象的lock。
sleep():使一个正在运行的线程处于睡眠状态,是一个静态方法,调用此方法要捕捉
InterruptedException 异常。
notify():唤醒一个处于等待状态的线程,注意的是在调用此方法的时候,并不能确切的唤
醒某一个等待状态的线程,而是由JVM 确定唤醒哪个线程,而且不是按优先级。
Allnotity():唤醒所有处入等待状态的线程,注意并不是给所有唤醒线程一个对象的锁,
而是让它们竞争。
第7题:
Java语言具有许多优点和特点,下列选项中是通过Java虚拟机实现的特点的是( )。
A.安全性
B.多线程
C.分布式
D.可移植
第8题:
多线程是Java语言中的【 】机制,它能够处理同步共享数据和各种不同的事件。
第9题:
Java语言具有许多优点和特点,下列选项中______是通过Java虚拟机实现的特点。
A.分布式
B.多线程
C.安全性
D.可移植
第10题:
此题为判断题(对,错)。