より多くの入力を介して連続して並列に供給できますか?

より多くの入力を介して連続して並列に供給できますか?

私がしたいのはこれです:

inotifywait -m ./input -e close_write -e moved_to |
    parallel --max-args 1 "someSlowSingleThreadedTaskThatActsOnThisFile"

私はこれがうまくいくことを想像することはできません(それはそうではない)。parallel実行を開始する前に、すべての入力を提供する必要があると思います。だから私の質問は:すでに実行中なので、並列にさらに入力を追加する方法はありますか?私は入力をワーカープールとして想像し、現在のシステムで合理的な最大スレッド数を使用して、できるだけ早くそのプールを処理します。私がやりたいことは、プールがまだ実行されている間にプールに追加することです。

実行時により多くの入力を継続的に提供するにはどうすればよいですかparallel(具体的には、フォルダにより多くのファイルが追加されるにつれて)。または、parallel仕事に適した選択肢ではない場合は何ですか?

答え1

entr指定したファイルまたはファイルのリストでコマンドを実行し、そのファイルが変更されるentrたびにランダムなコマンドを実行するのはどうですか?ファイルが変更されたときにプレビューとプロジェクトを自動的に再構築するのに役立ちますか?なぜ使用できないのかわかりませんparallel

ジェイソンC.

関連情報