遇到一个线程的相关问题,单线程是如何实现的?多线程又是如何实现的?用语言进行描述
单线程是从头到尾依次执行。对于多线程,单核的计算机会存在很短时间片,在这个时间片执行这个线程,下一个时间片执行下一个线程,依次轮流,从而达到几个线程同时执行的效果,多核的计算机可以达到真正的同时执行。
单线程:start()
多线程:
for(i=1;i<10;i++){
new Thead(new Aaa()).start();
}
public class Aaa implements Runnable(){
public run(){
方法体
};
}
代码可能部分有错,但是思路是对的
单线程是在一个进程中同时只有一个代码段在执行,而多线程是在一个进程中有多个代码段在执行,由于线程之间是共享资源和地址空间的 ,
所以要处理线程对资源的独占问题,对资源用到“锁”的机制,具体实现要看所用的语言,但原理都一样的。
继承Thread 或者实现Runnable接口就可以创建一个单线程
通一个任务被多次start。就是多线程了。
线程是操作系统管理的,不知道你问的实现是指操作系统怎么管理线程,还是问你的程序怎么创建和调用线程以及线程的同步。