問題タブ [node-fibers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
meteor - Meteor はファイバーの実行を停止しませんでした
大規模な検証といくつかのプロセスの後に、csvファイルをアップロードしてdbに挿入したいと考えています。fibers
非同期呼び出しに使用しています。しかし、ファイバー プロセスは、ファイバー リターンでも実行し続けますfuture.wait();
。
saveCalender
関数は毎回実行されます。ファイバーの実行を停止するために何かを逃したか、またはファイバーの実行を停止するにはどうすればよいですか?
javascript - csv を 1 行ずつ解析しようとしているときに「ファイバーが実行されていません」
fast-csv 内でファイバーを使用して、その行がさまざまな非同期呼び出しを完了するまで各行で読み取り/処理を一時停止する行ごとのリーダー (単一ユーザー コマンド ライン スクリプト) を作成する方法を理解しようとしています。 . (自分のcsvコードを転がさずに、csvフォーマットに関して問題をすでに把握しているものを使用したい)
私がこれをしたら
私が期待するものを手に入れます:
各レコードの後にファイバーを使用して生成しようとすると
私は得る
何が起こっているのか理解していると思います.Fiber().run()のコードが終了するため、収量が呼び出される前にファイバーを離れるため、収量に達するとファイバーがなくなります。(したがって、巧妙なエラーメッセージ「ファイバーが実行されていません」)
解析が完了するまでファイバーを実行し続けるための適切な方法は何ですか?
とても単純な質問のように思えますが、明らかな答えが見えませんか? 最初は、Future().run() を出る直前に利回りを置くことを考えましたが、最初の fiber.run() が再びファイバーを離れさせるため、うまくいきません。
私が望んでいるのは、フローが次のようになることです。
しかし、fast-csv はレコードごとにいつイベントが発生するかを制御するため、fast-csv の内部を作り直さないと不可能かもしれません。私の現在の考え方は、各イベントが fast-csv 内で発生するたびに降伏し、ユーザーが csv.on("record") でイベントを処理して、csv を高速で解析するループに制御を戻す必要があるというものです。 -csv.
node.js - ファイバー再起動コールバックの問題
ファイバー経由で実行される関数を (正常に停止するかどうかにかかわらず) 停止したいと思います。ファイバーには、それを行うための throwInto() および reset() メソッドがあります。しかし、それを使用すると、コールバックが再起動します。なぜなのかご存知ですか ?
ここに私がやったことの小さな例があります。
コード:
出力:
node.js - meteor が機能しなくなったのはなぜですか? `throw new Error('`'+ modPath+ '.node` がありません。`node-fibe` を再インストールしてみてください
Meteor 1.3.2.4 と Node v4.4.3 を実行しています。すべてのプロジェクトが読み込まれなくなり、次のエラーが表示されます。最初にCannot find modules fibers
私が行ったのはエラーで、meteor build --directory ../build
ここで見たcd .meteor/local/build/programs/server
のはnpm installでした。
そして、エラーは次のように変わりました:
サーバーフォルダーで npmのアンインストールとファイバーの再インストールも試みましたが、役に立ちませんでした。
また、デスクトップだけでなく、同じバージョンを実行しているラップトップでも meteor が正常に動作しているようです。