因此,Ruby 1.9.1現在是declared stable。 Rails應該和它一起工作,慢慢地將寶石移植到它上面。Ruby 1.9.1的原生線程,對我有什麼幫助?
它具有本地線程和全局解釋器鎖(GIL)。
由於GIL就位,原生線程在1.9.1中對綠線提供什麼樣的好處?
因此,Ruby 1.9.1現在是declared stable。 Rails應該和它一起工作,慢慢地將寶石移植到它上面。Ruby 1.9.1的原生線程,對我有什麼幫助?
它具有本地線程和全局解釋器鎖(GIL)。
由於GIL就位,原生線程在1.9.1中對綠線提供什麼樣的好處?
我想大贏了,就是那個C基擴展can release the GIL。因此,例如,MySQL適配器可以非常乾淨地運行長時間運行的數據庫查詢,而不會阻塞所有其他Ruby線程。
1.9中的線程是本機的,但它們已經「放慢速度」,一次只允許運行一個線程。這是因爲如果線程確實並行運行,會混淆現有的代碼。
優點:
缺點:
priority()
是不同的。諸如loop {}
之類的東西在Linux中運行良好,其他線程有機會運行。但是,在線程的Solaris線程上佔用了進程的時間,你永遠不會退出!