私が開発しているライブラリの目的の 1 つは、指定されたバイト数をファイルから取得することです。この特定のケースでは、エントロピー ベースのランダム シーケンスを取得するために/dev/randomにアクセスしたいと考えています。
fread に関する私の主な問題は、より多くのエントロピーを待っているときに無期限にハングすることであり、これは望ましくありません。私の次の選択は、 fread を feof でラップしてバイトをチャンクで取得することでした。そうすれば、少なくともより良いエクスペリエンスのために完全なパーセンテージを提供できますが、収集できるものから反復 1、2、3、4.. のバイトは必要な量を正確に追跡するのは困難です。
私が探しているもの、必要な正確な量、およびチャンクを可能にするC標準のメソッドはありますか? これのタイムアウトを探す場合、データ要求をスレッド化することは良い選択肢でしょうか?