- 多线程(英语:multithreading),是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。具有这种能力的系统包括对称多处理机、多核心处理器以及芯片级多处理(Chip-level multithreading)或同时多线程(Simultaneous multithreading)处理器。在一个程序中,这些独立运行的程序片段叫作“线程”(Thread),利用它编程的概念就叫作“多线程处理(Multithreading)”。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程(台湾译作“执行绪”),进而提升整体处理性能。
多线程的优势:
1、提高应用程序的响应速度。对于开发图形用户界面的程序很重要,当一个操作耗时很长时,整个系统都会等待这个操作,程序就不能响应键盘、鼠标、菜单等操作,而使用多线程技术可将耗时长的操作置于一个新的线程,从而避免以上问题。
2、使多CPU系统更加有效。当线程数不大于CPU数目时,操作系统可以调度不同的线程运行于不同的CPU上。
3、改善程序结构。一个又长又复杂的进程可以考虑分为多个贤程,成为独立或半独立的运行部分,这样有利于代码的理解与维护。
多线程的特点:
1、多线程程序的行为无法预测,当多次执行上述程序时,每一次的运行结果都可能不同。
2、多线程程序执行顺序无法保证,它与操作系统的调度策略和线程优先级等因素有关。
3、多线程的切换可能发生在任何时刻、任何地点。
4、多线程对代码的敏感度高,对代码的稍微修改都可能产生意想不到的结果。