問題タブ [fs2]
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.
scala - Stream.emits() から発生したストリームに対する高価な flatMap() 操作
を介してファイルに書き込まれる文字列のストリームを使用すると、fs2 のパフォーマンスが低下するという問題が発生しましたtext.utf8encode
。パフォーマンスを向上させるためにチャンク化された文字列を使用するようにソースを変更しようとしましたが、代わりにパフォーマンスの低下が観察されました。
私が見る限り、それは次のように要約flatMap
されStream.emits()
ます。時間の使用は、Stream.emits() に渡されるシーケンスのサイズに基づいて指数関数的になるようです。以下のコード スニペットは例を示しています。
これはバグですか、それとも大きなシーケンスで Stream.emits() を使用するのは避けるべきですか?
scala - Fs2 を折りたたんでストリームに追加する方法
に追加したいStream
Stream
しかし、次のストリームは、前の折りたたみ結果に依存します
これが私のやり方ですが、ストリームs
は2回評価されます
foldAppend
一度だけ評価するメソッドを実装するにはどうすればよいですかs
。