3
在一些Redis加載測試中,LuaJIT 2.0(測試版)在類似單線程Python腳本的運行時間的約60%處執行得相當好。相當於Python的多處理的Lua?
當使用Python的多處理模塊chunk large text files時,會導致性能顯着提高,將內核間的工作分開。
我假設在Lua中使用相同的方法會表現得更好,但作爲一個Lua初學者,我還沒有找到正確的方法。任何人都可以將我指向正確的方向嗎?
在一些Redis加載測試中,LuaJIT 2.0(測試版)在類似單線程Python腳本的運行時間的約60%處執行得相當好。相當於Python的多處理的Lua?
當使用Python的多處理模塊chunk large text files時,會導致性能顯着提高,將內核間的工作分開。
我假設在Lua中使用相同的方法會表現得更好,但作爲一個Lua初學者,我還沒有找到正確的方法。任何人都可以將我指向正確的方向嗎?
有LuaThreads,但是,如Mike Pall所解釋的here,它並不是多線程和相互連接任務的最佳解決方案(因爲所有線程都會錘擊lua狀態中的單個鎖)。
然而LuaLanes可能提供你所需要的,但是,當你使用/有利於LuaJIT而不僅僅是簡單的Lua時,你可以利用FFI直接從LuaJIT產生系統線程並將它們傳遞給Lua回調函數(I然而,我不確定這件事的安全性,這對於LuaJIT郵件列表來說也是如此)。