
什么是多线程?
它是线程程序中的执行流。每个线程都有自己的专有寄存器(堆栈指针、程序计数器等)。),但是代码区是共享的,也就是不同的线程可以执行同一个函数。
什么是多线程?多线程是指一个程序包含多个执行流,即一个程序中可以运行多个不同的线程同时执行不同的任务,即允许单个程序创建多个并行执行线程来完成各自的任务。
多线程的优点:可以提高CPU利用率。在多线程程序中,当一个线程必须等待时,CPU可以运行其他线程来代替等待,从而大大提高程序的效率。多线程和单线程的区别。比如你早上去上班,正要打卡的时候,手机响了。如果你先接电话,当你完成时,你打卡,这是一个单线程。如果你一只手接电话,另一只手打卡。它的多线程。两件事的结果是一样的。你接了电话,打了卡。
如果您有一些长时间运行的任务,这种多线程方法是有效的。然而,游戏开发代码通常包含许多一次执行的小指令。如果您为每个线程创建一个线程,您可能会得到许多线程,每个线程的生命周期都很短。这可能会推动CPU和操作系统处理能力的极限。
拥有线程池可以缓解线程生存期的问题。但是,即使使用线程池,也有可能同时激活大量线程。线程多于CPU核心会导致线程相互竞争CPU资源,从而导致频繁的上下文切换。上下文切换是保存线程状态,然后处理另一个线程,然后重新构建第一个线程继续处理它的过程。上下文切换是资源密集型的,所以您应该尽可能避免使用它。










