さて、Clojure にこの小さな手続き型 SVG エディターがあります。
ユーザーが SVG ドキュメントを生成するコードを作成するコード ペインと、プレビュー ペインがあります。コードが変更されるたびに、プレビュー ペインが更新されます。
現時点では、テキスト変更イベントで、コードが UI スレッド (Ewwww!) で再コンパイルされ、プレビュー ペインが更新されます。代わりに、コンパイルのステップは非同期で行われるべきであり、エージェントはその問題に対する良い答えのようです。更新時にコードを再コンパイルするようにエージェントに依頼し、結果を画像ペインに渡します。
私はまだエージェントを使用したことがなく、それらが暗黙のキューで機能するかどうかもわかりませんが、おそらくそうだと思います。私の場合、「中間」ステップの計算にはまったく関心がありません (高速なキーストロークについて考えてみてください。再コンパイルが開始される前にキーストロークが発生した場合は、再コンパイルを破棄したいだけです)。つまりsend
、保留中のエージェントを上書きしたいのです。計算。
どうすればそれを実現できますか?ヒントはありますか?それともコードサンプル?私のとりとめのないことは理にかなっていますか?
ありがとう!