aio

    0

    1答えて

    私はスーパーシンプル.cppファイル以下のように持っている: $cat test001.cpp #include<libaio.h> int main(){ io_context_t ctx={0}; struct iocb io,*p=&io; return 0; } をしかし、一度はgcc 4.1.2でコンパイルし、それが要

    0

    1答えて

    私たちが知っているのは: (1)epollはユーザクエリ/システム通知に基づいて同期しています。 whileループはすべてのfdを呼び出すために使用されます。 (2)boost :: asio自身が "非同期"であると宣言していますが、Linuxでの実装はepollを使用しています。 私の質問は、 "syn"システムコールを使って "asyn"をどのように実装できますか?カーネル/システムでサポー

    0

    1答えて

    シリアルポートを非同期で使用しようとしています。私は、select、poll、またはepollとO_NONBLOCKを使って、非同期の読み書きを行うことができます。しかし、openとcloseについてはどうですか? 私はcloseブロックを1秒以上見てきました。

    0

    1答えて

    io_getevents通知機構は一見したところではかなり見えるので、私はそれを使用することができます。まだ何も見つかりませんでした。 Windowsの場合は簡単です:TransmitFileしかありませんが、必要に応じて非同期に(重複して)動作し、通知メカニズム(IOCP、イベント)で動作します。 Linuxには同等のものが必要ですね。あるいは、私の質問をいくつかの文脈に入れて、Linux上で効

    0

    1答えて

    C++のandroid-ndkコードでsdcardに保存されたたくさんのデータを保存/ロードする必要がありました。しかし、私はAndroid NDKに非同期ファイルIO <aio.h>がないと言われました、そうですか? もしそうなら、Android NDKで非同期読み書きファイルの例(またはガイドライン)を教えていただけますか?ありがとうございました!

    1

    1答えて

    を受け入れる並行して、私は混乱しますので、私はそこにあるライン269で、sun.nio.ch.UnixAsynchronousServerSocketChannelImplのsource codeを読んで私たちはone.Thisによって接続1を受け入れるべきであると思わコメントチェックとフラグを同時に受け入れないようにする、だから誰かが私がなぜ現在の受け入れを妨げるべきか教えてもらえますか? これ

    1

    1答えて

    私はaio_writeを使用する非常に単純な関数をC++で作成しました。引数で私はファイルとそのサイズを作成するパスを取得します。新しいファイルを作成するには、int open(const char *pathname, int flags, mode_t mode)を使用します。 次に、私はそれを共有オブジェクトにコンパイルします:g++ -Wall -g -Werror aio_calls.c

    0

    1答えて

    私のアプリケーションは、システム上で動作する他のアプリケーションに対して高性能のサーバとして機能します。開発中、私はコアの約30%がeventfd_write()を呼び出すために消費されたので、単一のシステムコールを使用して複数のevenfdを書き込むためにlibaioを使用しようとしました。 AIOはeventfdではサポートされていないことがわかりました。 eventfdにAIOを実装していな

    0

    1答えて

    libaio ioengineを使用しているときに書き込みエラーが発生するかどうかをfio(github.com/axboe/fio)が判断する方法を調べています。 郵便番号linux kernel aio functionalityからは、io_getevents()が返すイベントを調べるコールバック関数work_done()のエラーチェックの例があります。 しかし、libaio.c(https

    1

    1答えて

    私はaioを使って、1つのスレッドで複数のファイルを異なるディスクに書き出します。バッファリングされた書き込みを使用すると、IO処理は同時に行われます。しかし、CPU負荷は非常に高いです。 DIRECTフラグでファイルを開くと、IO処理が同時に行われません。 DMAを使用して1つのスレッドで複数のファイルを同時に複数のディスクに書き込む方法はありますか? #include <malloc.h>