3
A
回答
3
我沒有使用LuaJIT自己,除了玩具的例子。但由於沒有人提供了任何答案,所以... ...
從略讀documentation,LuaJIT依賴於標準協程庫的Coco擴展。 Coco引入的其中一個變化是,創建新協程的函數現在採用指定堆棧大小的可選參數。
引述可可文檔:
coro = coroutine.create(f [, cstacksize])
func = coroutine.wrap(f [, cstacksize])
可選參數
cstacksize
指定C堆棧到 大小分配用於協程:
- 默認如果沒有給出
cstacksize
或者爲0,則使用堆棧大小或 零。- 如果
cstacksize
是-1
,則不分配C堆棧。- 任何其他值均向上舍入到最小大小(即使用
1
獲得 的最小大小)。
還有新功能coroutine.cstacksize([newdefault])
,設定缺省的C堆棧大小,以及對C API一些相應的變化。
此外,LuaJIT版本的luaconf.h中有許多編譯時配置選項。那裏可能有些東西會設置默認值。在Windows上,還有一個可執行文件基本堆棧的鏈接時間設置,由MSVC的LINK.EXE通過應用程序的.DEF文件中的STACKSIZE語句設置。
相關問題
- 1. 增加AsyncTask堆棧大小?
- 2. 增加堆棧大小c#
- 3. 增加堆棧大小
- 4. 在Windows上增加堆棧大小(GCC)
- 5. 如何用runhaskell增加堆棧大小?
- 6. 的Android:增加調用堆棧大小
- 7. 用XCode增加堆棧大小
- 8. C++ vs2010增加堆棧大小
- 9. 增加堆棧大小IIS ASP.NET 3.5
- 10. 如何增加Java堆棧大小?
- 11. 增加MSXML中的XSL堆棧大小
- 12. 堆棧= java.lang.StackOverflowError的:堆棧大小8MB
- 13. Java堆大小增加
- 14. 增加Tomcat的堆大小
- 15. Android堆棧大小
- 16. Linux堆棧大小
- 17. Java堆棧溢出錯誤 - 如何在Eclipse中增加堆棧大小?
- 18. 增加Java小程序的堆大小
- 19. LINQ堆棧大小問題
- 20. Android後退堆棧大小
- 21. 遞歸堆棧大小?
- 22. 遞歸堆棧大小
- 23. 可變堆棧大小
- 24. 如何在.Net 3.5中增加Webservice的堆棧大小
- 25. 使用setrlimit在Linux中增加堆棧大小
- 26. 如何增加vstest.executionengine.x86.exe的堆棧大小
- 27. 在Xcode 4中增加應用程序的堆棧大小
- 28. 在瀏覽器中增加堆棧大小
- 29. 在Clion中增加C程序的堆棧大小
- 30. 如何在Bloodshed Dev-C++中增加堆棧大小?
謝謝。我會嘗試增加C編譯器堆棧大小並減小協程堆棧大小。 – jameszhao00 2009-08-31 22:53:14
沒有骰子。我嘗試在ldargs中注入-Wl, - stacksize =標誌,但它似乎忽略了它。 – jameszhao00 2009-08-31 23:28:02
我不確定*減少*協程棧大小會有所幫助。我想到了*增加*它......我沒有看到任何控制初始線程堆棧大小的聲明,如果它不是鏈接時間堆棧大小的話。但是如果你有協同程序,並且它是其中一個報告堆棧不足的話,那麼你需要增加可用的協議棧大小,如果不是全部的話。 – RBerteig 2009-09-01 02:18:54