Her iş parçacığı için tek bir lua_State
oluşturmak, Lua uygulamasının birden fazla iş parçacığına sahip olması için iyi bir çözümdür. Bununla birlikte, bu durumlar ayrılan çok'dur. Özellikle, Lua API'sı, her lua_State
'a her seferinde tek bir iş parçacığından erişildiği sürece yalnızca iş parçacığı güvenli olduğundan, bunlar arasında güvenli bir şekilde iletişim kurmak zordur. (O lua_lock
ve lua_unlock
sürece lua çekirdeğin inşa varsayılan girmeyen uygun bir Muteksleri olarak uygulanmaktadır.)
tecrit bu seviyede kabul edilebilir değilse, o zaman bir kaç birini araştırmak gerekir Lua örneklerinin dişli bir süreçte başkalarıyla iyi oynamasına izin veren mekanizmalar.
Benim favori seçim evreli bir şekilde aralarında değerleri mesajların geçmesi ve paylaşmak için bir mekanizma ile birlikte çoklu iş parçacığı sağlar Lua Lanes olduğunu. Çoğu Lua tipinin değerleri (kullandığı kütüphaneden biraz C tarafı desteği ile userdata
dahil) bir şeritten diğerine güvenli ve verimli bir şekilde geçirilebilir.
Diğer mekanizmalar var ve bunların çoğu için iyi bir başlangıç noktası Lua kullanıcının wiki page on MultiTaksing altındadır.