标签: multithreading emacs
htop将两个正在运行的emacs服务器的状态检查为:
正在执行的线程数是3的常数,即使从一个帧中打开了更多的缓冲区和窗口,执行线程也会保持不变。
是否将线程最多限制为3个?
答案 0 :(得分:3)
Emacs通常是单线程的,因此这3个线程很可能是Gtk,Glib或Emacs构建所使用的此类库内部使用的辅助线程。
答案 1 :(得分:2)
您可以通过make-thread创建新线程,例如。
make-thread
(make-thread (lambda () (sit-for 20)) "sitting")
应该显示类似
但是正如Stefan指出的那样,如果您搜索emacs代码库,则在Lisp的实现之外不会发现太多线程创建(例如Fmake_thread)。
Fmake_thread