Tarantoolでは、Luaコードの作成者がTarantoolの実行をスケジュールしたいときに、ファイバーを使用していますか? Luaコードの作成者が実行を制御したいときに使用されるコルーチン(Tarantool/LuaJITプロセス内)は使用されていますか?繊維を使用する時期とTarantoolでコルーチンを使用する時期は?
答えて
Tarantoolでは、ファイバはコルーチンと同義です。ファイアウォールはTarantool I/Oなどに統合されていますので、luaコルーチンの代わりに使用してください。ルアコルーチンよりも、私たちのファイバーは、より強力なので、常にファイバーを使用することをお勧めします。私たちの全体のI/Oスタックは、それらと統合されています。ソケット、ファイル、net.box、mysqlの、のpostgresqlなどのドキュメントへ
リンク:http://tarantool.org/doc/reference/fiber.html
コルーチンをするために使用することができ、いくつかのタスク、などがあります。イテレータ。コルーチンとファイバの両方を同時に使用することは完全に有効ですが、混乱を招く可能性があります。コルーチンの歩留まりは、悪質なattempt to yield across C-call boundary
で失敗する可能性がありますが、この状況ではファイバは機能します。
迅速な返信をありがとう。 –
他の負の副作用がありますか? – aleclarson
ファイバスタックは、コルーチンの1つよりも大きい。これは64KBにmmappされ、少なくとも1つのOSページ(通常は4KB)です。ファイバー・コンテキスト・スイッチングは、コルーチンを隠す/復元するだけでなく、レジスターを隠す/リストアするため、余分なオーバーヘッドを招きます。ファイバコンテキストスイッチは、LuaJITがトレースされた実行を非表示/復元できないため、LuaJITのJITを中断します。コルーチンとは異なり、ファイバはアプリケーションサーバーに組み込まれているすべてのノンブロッキングIOでうまく機能します.IOコールでファイバが暗黙に発生すると、別のファイバが起動します。ただし、別のコルーチンはもちろんありませんあなたがそれらを使用しているならば、あなた自身のこと。
- 1. Amazon Dynamo dbの使用時期とsqliteの使用時期は?
- 2. ブラケットを使用する時期とObjective-Cの期間を使用する時期
- 3. イベントの使用時期とコールバックの使用時期
- 4. Apache Helixの使用時期とApache Mesosの使用時期
- 5. PHPで定数を使用する時期と使用方法
- 6. 抽象的なプロパティを使用する時期と使用しない時期はわかりません
- 7. EventStoreプロジェクションの使用時期
- 8. ビジネスルールエンジンの使用時期
- 9. ゲーテッド・チェックインの使用時期
- 10. ColdFusionで#を使用する時期はいつですか?
- 11. クラスとグローバル変数を使用する時期と理由
- 12. タプルの使用法と時期
- 13. 複数のビルドエージェントを使用する理由と時期
- 14. LINQをオブジェクトに使用する場所と時期
- 15. Kotlin:ラムダ式を使用する時期と方法
- 16. 初期化時にUITableViewStyleGroupedを使用する方法は?
- 17. .NETアプリケーションでApp.Configファイルを使用する時期/方法
- 18. 現在の時刻を使用してディスプレイを同期する
- 19. Kotlinのコルーチンは:、Kotlinで</p> <p>:カサンドラ同期の使用をラップ対非同期の使用
- 20. Ent Lib Unityの使用時期
- 21. 静的初期化時にフリーの "char const *"を使用する
- 22. comコンポーネントの初期化時にコンストラクタを使用する
- 23. ビルド中にキャッシュを使用する時期と使用しない時期をDockerはどのように知っていますか?
- 24. Unity3D - コルーチンの待ち時間としてTime.deltaTimeを使用
- 25. Property.forName()を使用する時期または理由は何ですか?
- 26. node.js mysqlで接続プールを使用する時期はいつですか?
- 27. Javaでジェネリッククラスを使用する適切な時期はいつですか?
- 28. これは、QThreadをQProcessで使用する適切な時期ですか?
- 29. 繊維を使ってスタイルを設定する方法は?
- 30. 集計を範囲の時間と期間で使用する方法
Tarantoolでは、ファイバはコルーチンと同義です。ルアコルーチンよりも、私たちのファイバーは、より強力なので、常にファイバーを使用することをお勧めします。ソケット、ファイル、net.box、mysql、postgresqlなど、I/Oスタック全体が統合されています。 – Kostja
イテレータのようにコルーチンを使用できるタスクがいくつかあります。コルーチンとファイバの両方を同時に使用することは完全に有効ですが、混乱を招く可能性があります。コルーチンの歩留まりは、有害な「Cコール境界を越えて降伏しようとする」試みに失敗し、ファイバはこの状況で動作する。 –