私はこの一日中、私の脳をつかまえてきましたが、私はそれを理解できません。私のサーバは、すべてのスクリプトをグローバル変数としてロードする単一の状態を使用します(スクリプトを実行するたびにluaL_dofile
にすることなくいつでも呼び出すことができます)。問題は、車線を使用しようとしたときに起こります。 require "lanes"
はLinux(Ubuntu 11.10 x86)上の適切なディレクトリにlanes.luaがあるので、適切に動作するように(私は思っていますか?それは適切にpackage.loadedにテーブルを返します)動作します。しかし、私がlanes.gen("", functionName)
に行くとき、それは私に言う... attempt to index global 'lanes': a nil value
。この時点で私はpackage.loaded["lanes"].gen("", functionName)
を試してみることにしました。それは私に教えてくれます... attempt to index field 'gen': a nil value
詳細が必要な場合は、私にお知らせください。少なくともお手伝いをしてくれてありがとうございます。ゲームサーバーでLua Lanesを動作させるにはどうすればよいですか?
1
A
答えて
1
あなたは(あなたがluarocks install lanes
によって得るものである)latest LuaLanesを使用している場合は、モジュールをロードするサポートされている方法はこれです:
local lanes = require "lanes".configure()
configure()
はconfigure()
モジュールを呼び出す前に、すべての必要な機能を作成します。テーブルが空です。これはあなたの問題のようです。
関連する問題
- 1. Boost.LexicalCastを動作させるにはどうすればよいですか?
- 2. grails remoteFunctionを動作させるにはどうすればよいですか?
- 3. 'photo'_url(...)を動作させるにはどうすればよいですか?
- 4. "onEntered"を動作させるにはどうすればよいですか?
- 5. Fandjangoを動作させるにはどうすればよいですか?
- 6. OData DELETEを動作させるにはどうすればよいですか?
- 7. アンドロイドスタジオを動作させるにはどうすればよいですか?
- 8. WWW :: Mechanizeを動作させるにはどうすればよいですか?
- 9. #ifデバッグを動作させるにはどうすればよいですか?
- 10. Tryparseを動作させるにはどうすればよいですか?
- 11. php5-gdを動作させるにはどうすればよいですか?
- 12. トグルスイッチを動作させるにはどうすればよいですか?
- 13. リニアグラデーションを動作させるにはどうすればよいですか?
- 14. virtualenvを動作させるにはどうすればよいですか?
- 15. EFrepositoryを動作させるにはどうすればよいですか?
- 16. WS_MAXIMIZEを動作させるにはどうすればよいですか?
- 17. デリミタを動作させるにはどうすればよいですか?
- 18. スクロールバーを動作させるにはどうすればよいですか?
- 19. listviews onitemclicklistenerを動作させるにはどうすればいいですか?
- 20. Async APIを動作させるにはどうすればいいですか?
- 21. Annotate gemを動作させるにはどうすればいいですか?
- 22. ボットを動作させるにはどうすればいいですか?
- 23. 拡張されたHtml.ValidationImageでxValを動作させるにはどうすればよいですか?
- 24. 注入されたロガーをgrailsで動作させるにはどうすればよいですか?
- 25. インポートされたファイルでTextMateを動作させるにはどうすればよいですか?
- 26. テーブル行でスワイプ機能を動的に動作させるにはどうすればよいですか?
- 27. javax.crypto.Cipherなどのjavax.cryptoクラスをjbossでサーブレットで動作させるにはどうすればよいですか?
- 28. ギャラリーのようなイメージでWP Featherlightを動作させるにはどうすればいいですか?
- 29. .luaファイルを実行するにはどうすればよいですか?
- 30. .luaスクリプトを実行するにはどうすればよいですか?
これは機能します。私はフォローアップをしています...私はこのレーンのものに精通しているわけではなく、「メインスレッドをロックしていない」ということを利用してサーバをハングアップさせようとしています。 'lanes.gen()'を使って作成したスレッドをCと通信させるにはどうすればよいですか?私はリンダの物などを作る必要がありますか?とにかく、私はこれまでこれを得ることに非常に感謝しています。あなたもこのフォローアップを処理できることを願っています。 – user1332555
はい、スレッド間で通信するためには、リンダオブジェクトが必要です。スレッド関数の前に 'local linda = lanes.linda()'を作成し、 'linda:send()'と 'linda:receive()'を使って通信します。 –
あなたは、作成された車線をCと通信させる方法について質問していました(@MichalKottmanが取ったように、別の車線ではなく)。マルチスレッド化せずに、C側のLuaモジュールを作る必要があります。より多くの情報を与えてください(自分のCのものか、既存のモジュールをロードする必要がありますか?requireを使用してください)。 – akauppi