FIFO通信(先入れ先出し) 関連のないプロセス間の通信を可能にする FIFO 名前付きパイプ。
男3 mkfifo #include <sys/types.h> #include <sys/stat.h> int mkfifo(const char *パス名、mode_t モード); 注記: FIFO fifo ファイルを開くと、読み取り側は書き込み側が開くのを待ってブロックされ、書き込み側も別の側が開くのを待ってブロックされます。 コード例: #include <stdio.h> #include <stdlib.h> #include <sys/wait.h> #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> #include <fcntl.h> #include <文字列.h> int main(int argc, char *argv[]) { 引数が2の場合 printf("./a.out ファイル名1\n"); -1 を返します。 } printf("w\n を開いて開始"); int o_ret = open(argv[1], O_WRONLY); printf("w\n のオープン終了"); char buf[256]; 整数 = 0; 一方(1){ memset(buf, '\0', sizeof(buf)); sprintf(buf, "xiaoming--%d", num++); printf("strlen(buf) = %d\n", strlen(buf)); 書き込み(o_ret、buf、strlen(buf)); 睡眠(1); } 閉じる(o_ret); 0を返します。 } file_r.c 読み取り側 #include <stdio.h> #include <stdlib.h> #include <sys/wait.h> #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> #include <fcntl.h> #include <文字列.h> int main(int argc, char *argv[]) { 引数が2の場合 printf("./a.out ファイル名1\n"); -1 を返します。 } printf("r をオープンし始める\n"); int o_ret = open(argv[1], O_RDONLY); printf("open r の終了\n"); char buf[256]; 整数 = 0; 一方(1){ memset(buf, '\0', sizeof(buf)); 読み取り(o_ret、buf、sizeof(buf)); printf("strlen(buf) = %d\n", strlen(buf)); printf("読み取りは%s\n", buf); } 閉じる(o_ret); 0を返します。 } 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL ルートパスワードを変更する 4 つの方法 (要約)
通常、フィールド値を更新するには次の SQL ステートメントを使用します。 mytable を更新し...
目次質問: 1. 最初の試み2. 合理的な分析3. 問題解決(1) pthread_join()の使...
vue2 では、タイムスタンプを変換するときに、通常はフィルターを使用します。vue3 以降では、...
質問1 解決するサービスを開始します: service mysqld start; /sbin/ip...
1. Tomcatのインストールパスを作成する mkdir /usr/local/tomcat 2....
1. テーブル内のフィールドの種類を表示する テーブル名を記述する desc テーブル名 2. テー...
非準拠データがデータベースに入るのを防ぐために、ユーザーがデータを挿入、変更、削除、その他の操作を行...
1. LinuxサーバーのDocker構成ファイルを変更する vim /usr/lib/system...
MySQL挿入時の8時間の時差の問題を解決する通常、jdbc の URL にはいくつかのパラメータを...
目次フックとは何ですか?クラスコンポーネント機能コンポーネントフックが作られた理由要約するフックとは...
最終結果はこんな感じです、かわいいでしょう… PS: HTML と CSS の知識があればベストです...
tinyMCE の使用方法の詳細な説明初期化TinyMCE を初期化するときは、ページの HEAD ...
Dockerイメージ内のファイルを表示する方法1. すでに実行中の場合すでに実行中のイメージについて...
目次1. ユーザーが作成したスクリプト2. 単語当てゲーム3. ネットワークカードのトラフィック監視...
シェル スクリプトで電子メールを作成する必要がある場合は、コマンド ラインから電子メールを送信する知...