いんくるーど
#include <sys/types.h> #include <unitstd.h> #include <sys.wait.h>
waitは無くてもいいけどあると便利
プロセス生成
int pid; pid = fork(); if (pid!=0){ ~親プロセスの処理~ }else if(pid==0){ ~子プロセスの処理~ }else{ ~エラー処理~ }
プロセス間でデータを送りたい
パイプが一番楽?
子→親で送るならたぶんこう
int pid; pid = fork(); int pipes[2]; int buf[1]; int data; if(pipe(pipes)==-1){ ~エラー処理~ } if (pid!=0){ ~親プロセスの処理~ read(pipes[0], buf, sizeof(int)); }else if(pid==0){ ~子プロセスの処理~ write(pipes[1], data, sizeof(data)) }else{ ~エラー処理~ }
親→子もするならそれ用にパイプ追加で作っておく.プロセスをたくさん作るならパイプもたくさん作ってたくさんread/writeすればいい.同じパイプを共有するとぶつかったりして面倒.
マルチスレッド?メモリ管理面倒くさすぎて嫌じゃぁ