Elixir langのMiguel Cambaチュートリアルに従っています。
次のスニペットを利用しようとするまで、すべて問題ありません。
get "/play/:story_name" do conn = conn.resp_content_type("テキスト/イベントストリーム") conn = conn.send_chunked(200) iterator = File.iterator!("#{conn.params[:story_name]}.txt") Enum.each イテレータ、fn(行) -> { :ok, conn } = conn.chunk "データ: #{行}\n" await conn, 1000, on_wake_up(&1, &2), on_time_out(&1) 終わり 接続 終わり defp on_wake_up(arg1, arg2) do # 何もない 終わり defp on_time_out(arg1) do # 何もない 終わり
私は次のことを試しました:
接続待ち, 1000, on_wake_up&(&1, &2), on_time_out&(&1)
await conn, 1000, on_wake_up(&(&1, &2)), on_time_out(&(&1))
接続待ち、1000、on_wake_up()、on_time_out() 終わり 接続 終わり defp on_wake_up() do # 何もない 終わり defp on_time_out() do # 何もない 終わり
イントロスペクションを実行して、それぞれ (arg1, arg2) および (arg1) に渡されたオブジェクトのタイプを確認したいと思いますが、それを達成する方法をまだ見つけようとしています..
それまでは、iex REPL で動作させることができなかったため、ショートカット アンパサンド メソッドが役立つかどうかはわかりません。私の質問は、イントロスペクション、ドキュメント、またはショートカット アンパサンド メソッドを使用して、このような場合にどのようにトラブルシューティングを行うかです。前もって感謝します。