私はクリスタルを初めて使用し、ステータスが完了しているかどうかを確認するためにファイバーを生成しようとしています。ここにいくつかのコードがあります。
def fiber_operations()
status = -1
spawn do
while status != 5
response = HTTP::Client.get "https://api.com/endpoint"
response_to_hash = JSON.parse response.body
status = response_to_hash["status"]
sleep 2.seconds
end
end
Fiber.yield
end
これらのいくつかを作成すると、このエラーが発生します (これより前は正常に動作しているようです)。
「spawn で未処理の例外: SSL_shutdown: 操作が進行中です (Errno)」
編集:
さらに情報を追加しました。おもちゃの例で十分だと思いましたが、HTTP::Client に関連している可能性があるため、追加しました。いくつかの API エンドポイントに対して GET を実行し、その方法でステータスを取得しています。1 つの GET が進行中の場合、別の GET を開くことができないのでしょうか? もしそうなら、これを行う方法は?
編集2:
修正ではありませんでした。