#include "myapue.h" static void charatatime(char *str); int main(void) { pid_t pid; if((pid = fork()) < 0) err_sys("fork error"); else if(pid == 0) charatatime("output from child\n"); else charatatime("output from parent\n"); exit(0); } static void charatatime(char *str) { char *ptr; int c; setbuf(stdout, NULL); for(ptr = str; (c = *ptr++) != 0;) putc(c, stdout); }
(1)<117>函數
setbuf函數:更改流的緩衝類型。code
必定要在流已被打開後調用,也應該在對該流執行任何一個其餘操做以前調用。
進程
第二個參數設置爲NULL時,關閉緩衝。
it
(2)class
fork函數產生競爭條件演示。本例的目的是使內核儘量屢次地在兩個進程之間進行切換,以演示競爭條件。im