线程在python中真的很重要吗?

2024-04-29 03:56:53 发布

您现在位置:Python中文网/ 问答频道 /正文

正如标题所说,因为在Python中我们有GIL,GIL表示在任何时候只有一个线程可以执行代码,这意味着单独的线程实际上不是并行运行的,而是“交错”运行的,但仍然只使用CPU的一个内核。你知道吗

这不是基本上打败了线程的整个概念吗?因为线程不是真正并行运行的,所以使用线程进行并行化是不可能的?你知道吗

我已经找到了一些关于这个问题的答案,但没有明确解决这个问题,我道歉,如果这个问题的具体方面已经得到了回答。你知道吗


Tags: 答案代码概念标题cpu线程内核gil
1条回答
网友
1楼 · 发布于 2024-04-29 03:56:53

不完全是。GIL将防止计算代价高昂的线程同时执行,并且不会给性能带来太大的提升。你知道吗

另一方面,非计算性任务(例如文件I/O)可以通过多线程来极大地提高性能。假设你要写40个文件。如果计算机可以一次处理写20个文件,那么使用多线程可以比阻塞和写入每个文件快得多。你知道吗

相关问题 更多 >