emacs是否将运行线程限制为最多3个?

时间:2019-05-24 23:57:37

标签: multithreading emacs

htop将两个正在运行的emacs服务器的状态检查为:

enter image description here

正在执行的线程数是3的常数,即使从一个帧中打开了更多的缓冲区和窗口,执行线程也会保持不变。

是否将线程最多限制为3个?

2 个答案:

答案 0 :(得分:3)

Emacs通常是单线程的,因此这3个线程很可能是Gtk,Glib或Emacs构建所使用的此类库内部使用的辅助线程。

答案 1 :(得分:2)

您可以通过make-thread创建新线程,例如。

(make-thread (lambda () (sit-for 20)) "sitting")

应该显示类似

enter image description here

但是正如Stefan指出的那样,如果您搜索emacs代码库,则在Lisp的实现之外不会发现太多线程创建(例如Fmake_thread)。