我正在创建一个需要线程的Web应用程序,我试图弄清楚PHP和Ruby之间的哪些语言具有更好的线程功能和更好的性能。
即使没有内置,也可以使用一些简单的工作或附加功能。
答案 0 :(得分:9)
我不得不说Ruby,因为Ruby实际上支持它。 PHP没有。
使用PHP,您可以创建新进程(这是一个坏主意)或编写多个Web服务并使用curl_multi_ *函数来完成某些操作,但线程不是PHP的一个功能。
答案 1 :(得分:5)
如果你想要线程,这些可能是最糟糕的两种语言,但如果你真的想要这两种中的一种,我猜Ruby可以做到。不过最好选择JRuby。 JVM做了非常出色的线程。
(或者使用Groovy,它基本上是带有大量Rubyism的Java。)
答案 2 :(得分:2)
PHP通常不会进行线程化。
答案 3 :(得分:2)
PHP没有线程(好东西IMO)。
Ruby有,但在1.8中它有绿色线程,在1.9中它有一个GIL。这意味着(在MRI和YARV的情况下 - 1.8和1.9主要Ruby实现)是2个线程不能同时运行(在两种情况下)并且您无法利用多核处理器。
您可以使用两种语言的流程来克服这些限制。
答案 4 :(得分:2)
PHP目前不支持明确使用线程;您的PHP服务器可能会也可能不会使用线程来提供不同的HTTP请求(Zend引擎确实如此),但是没有设施可以通过PHP代码创建或协调线程。
答案 5 :(得分:0)