【发布时间】:2012-11-15 06:09:25
【问题描述】:
我想知道当我在 freebsd 中从端口源编译 perl 5.16(和其他版本)时,选项 'THREADS' 和 'PTHREAD' 有什么不同?
PTHREAD 是 posix 线程吗? (因为-pthread)如果是这样,它是否更喜欢“线程”? (因为它似乎是预先选择的)即使在freebsd上?另一方面,什么是“线程”(内核线程?)?有什么好处和坏处?
我可以在一个安装中同时使用两者吗?有道理吗?
据我所知,与 perl 结合使用的东西并不多。
非常感谢 吉米
【问题讨论】:
-
hum... Perl 只有一个线程模型 (
-Dusethreads) -
hmm :) 好的,使用 'THREADS' 编译它会将配置参数从 -Dusethreads=n 更改为 -Dusethreads=y。 “PTHREADS”将“-pthread”添加到 ldflags。所以,我想这不仅仅是在开玩笑。这有所不同,但我想知道什么?! ://
-
Perl 曾经有不同的线程模型。它非常破碎。您可能正在尝试访问它。
-
这个“它”是什么?你在用什么?在 Perl 发行版的任何地方都找不到“THREADS”和“PTHREAD”。如果您需要线程,请将
-Dusethreads传递给配置。如果你不这样做,你就不会。 -
@ikegami,
pthreads提到了here inperlthrtut。 @JimmyKoerting:但它只是将 Perl 中的线程模型与 pthreads 的 POSIX 模型进行比较。 Here
标签: multithreading perl pthreads freebsd