亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? waitdisp.c

?? 想學(xué)linux中的motif編程
?? C
?? 第 1 頁 / 共 2 頁
字號:
    }    buff[n] = 0;#if DEBUG    printf("おまち攫鼠\n");    printf("    妥滇メッセ〖ジ[%s]\n",buff);#endif                                       /* 茶燙彈瓢妥滇               */    if (inf_default.fork_tasknam[0] != 0) {        *pid = SUB_fork2(inf_default.fork_tasknam[0], buff, NULL);    } else  {        *pid = SUB_fork2("omati", buff, NULL);    }    if (*pid > 0) {                    /* 彈瓢喇根の眷圭             */        sts = NORMAL;    }#if DEBUG    SUB_wsprint(waitout, "彈瓢タスクpid = %d\n", *pid);#endif    return(sts);}static int wait_disp_off(pid)pid_t  pid;{    int  sts = ABNORMAL, ret = ABNORMAL;    int  idx;/*-------------------------------------------------------------------*/    if (pid > 0) {        SUB_wsprint(waitout, "タスク姜位妥滇 pid=%d\n", pid);                                       /* 彈瓢覺斗デ〖タ浮瑚         */        for(idx = 0;idx < wait_num;idx++) {                                       /* 彈瓢覺斗デ〖タに判峽されて */                                       /* いるpidの眷圭           */            if (waitdisp[idx].pid == pid) {                replace.flg = False;                replace.pid = pid;                                       /* タスク動擴(kuò)姜位             */                ret = kill(pid, SIGKILL);                SUB_wsprint(waitout, "タスク動擴(kuò)姜位 pid=%d\n", pid);                if (ret == 0) {                    SUB_wsprint(waitout, "タスク姜位借妄悸乖面...\n");                                       /* タスク姜位借妄が窗位するま */                                       /* でル〖プする               */                    while(replace.flg == False) ;                    sts = NORMAL;                } else  {                    SUB_wsprint(waitout, "茶燙久殿妥滇エラ〖  pid=%d ret=%d\n",                                                        pid, ret);                }                break;            }        }                                       /* 彈瓢覺斗デ〖タに判峽されて */                                       /* いないpidの眷圭         */        if (ret != NORMAL && idx >= wait_num) {            SUB_wsprint(waitout, "*** pid佰撅  pid=%d ***\n", pid);        }    }    return(sts);}int getdata(ppid, data)int  ppid;struct _waitdisp  *data;{    int  sts = ABNORMAL;    char  fname[MAXPATHLEN];    FILE  *fp_r;/*-------------------------------------------------------------------*/                                       /* pidからファイル嘆を侯喇 */    sprintf(fname, "/tmp/waitdisp.%d", ppid);    if (access(fname, F_OK) == 0) {    /* ファイルが賂哼する眷圭     */                                       /* 山績するデ〖タ粕み哈み     */        if ((fp_r = fopen(fname, "r")) != NULL) {            if (fread(data, sizeof(struct _waitdisp), 1, fp_r) == 1) {                sts = NORMAL;            }            fclose(fp_r);        } else  {/*            sprintf(work, "getdata:%s", fname);            perror(work);*/            sprintf(work, "getdata:%s error. %s\n", fname, sys_errlist);            SUB_wsprint(waitout, work);        }    } else  {/*        sprintf(work, "getdata:%s", fname);        perror(work);*/        sprintf(work, "getdata:%s:%s\n", fname, sys_errlist);        SUB_wsprint(waitout, work);    }    return(sts);}void chld_end(){    int  sts, statusp;    int  idx;    pid_t  pid;/*-------------------------------------------------------------------*/    pid = wait(&statusp);              /* 姜位したタスクのpid艱評 */    signal(SIGCHLD, chld_end);         /* シグナル減慨簇眶浩判峽     */    if (pid > 0) {                     /* 姜位したタスクがある眷圭   */#if DEBUG        SUB_wsprint(waitout, "タスク姜位  pid=%d  姜位ステ〖タス %d\n",                                        pid, statusp);#endif                                       /* 姜位したタスクの彈瓢覺斗デ */                                       /* 〖タ浮瑚                   */        for(idx = 0;idx < wait_num;idx++) {                                       /* 姜位したタスクのpidが辦 */                                       /* 米する眷圭                 */            if (waitdisp[idx].pid == pid) {                waitdisp[idx].pid = 0;                break;            }        }                                       /* 姜位したタスクのデ〖タを猴 */                                       /* 近し、それ笆慣のデ〖タを1 */                                       /* つづつずらす               */        for(;idx < wait_num - 1;idx++) {            memcpy(&waitdisp[idx], &waitdisp[idx+1],                                       sizeof(struct _waitdisp));        }        wait_num --;        if (wait_num < 0){            wait_num = 0;        }        waitdisp = (struct _waitdisp*)XtRealloc(waitdisp,                                sizeof(struct _waitdisp) * wait_num);                                       /* デ〖タ構(gòu)糠略ちに肋年されて */                                       /* いる眷圭                   */        if (replace.pid > 0 && pid == replace.pid) {            replace.flg = True;            replace.pid = 0;        }    } else  {                          /* 姜位したタスクがない眷圭   */        SUB_wsprint(waitout, "姜位タスクなし\n");    }}int read_defaultdata(){    int  idx;    char path[MAXPATHLEN];    char buff[BUFSIZ];    char var[BUFSIZ], val[BUFSIZ];    char *p;    FILE *fp_r;    strcpy(path, "./.waitdisp");                                       /* カレントディレクトリにデフ */                                       /* ォルトデ〖タファイルがない */    if (access(path, F_OK) != 0) {     /* 眷圭                       */        path[0] = 0;        if ((char*)getenv("SYSDIR") != NULL) {            strcpy(path, (char*)getenv("SYSDIR"));            strcat(path, "/f_waitdisp");                                       /* 茨董恃眶(SYSDIR)のディレク */                                       /* トリにデフォルトデ〖タファ */                                       /* イルがない眷圭             */            if (access(path, F_OK) != 0) {                path[0] = 0;            }        }    }#if DEBUG    printf("デフォルトファイル嘆:%s\n", path);#endif                                       /* デフォルトデ〖タ粕み哈み   */    if ((fp_r = fopen(path, "r")) != NULL) {        while(fgets(buff, sizeof(buff), fp_r) != NULL) {                                       /* 猖乖猴近                   */            if ((p = (char*)strchr(buff, '\n')) != NULL) {                *p = '\0';            }                                       /* コメント猴近               */            if ((p = (char*)strchr(buff, '#')) != NULL) {                *p = '\0';            }            if (strlen(buff) <= 0) {                continue;            }#if DEBUG            printf("buff:%s\n", buff);#endif            memset(var, 0x00, sizeof(var));            memset(val, 0x00, sizeof(val));            if ((p = (char*)strchr(buff, ':')) != NULL) {                *p = '\0';                strcpy(var, buff);                strcpy(val, p+1);                                       /* 矢機(jī)誤面の焊寶の鄂球猴近   */                spccut(var, (1 | 2));                spccut(val, (1 | 2));            }#if DEBUG            printf("var[%s]\n", var);            printf("val[%s]\n", val);#endif            for(idx = 0;default_tbl[idx].type >= 0;idx++) {                if (default_tbl[idx].name != NULL) {                    if (strcmp(default_tbl[idx].name, var) == 0) {                        default_tbl[idx].data =                                      (char*)XtMalloc(strlen(val) + 1);                        strcpy(default_tbl[idx].data, val);#if DEBUG                        printf("type=%d:%s:%s\n",                                        default_tbl[idx].type,                                        default_tbl[idx].name,                                        default_tbl[idx].data);#endif                    }                }            }        }    }}//KECint get_defaultdata( char *keyword, char *chardat, int *intdat, float *floatdat, ... ){    va_list  argp;    int   idx;     va_start( argp ,floatdat);    if (keyword != NULL) {        for(idx = 0;default_tbl[idx].type >= 0;idx++) {            if (strcmp(keyword, default_tbl[idx].name) == 0) {                if (default_tbl[idx].type == 0) {                    chardat = (char*)va_arg(argp, char*);                    if (default_tbl[idx].data != NULL) {                        strcpy(chardat, default_tbl[idx].data);                    } else  {                        chardat[0] = 0;                    }                } else  if (default_tbl[idx].type == 1) {                    intdat = (int*)va_arg(argp, int*);                    if (default_tbl[idx].data != NULL) {                        *intdat = atoi(default_tbl[idx].data);                    } else  {                        *intdat = 0;                    }                } else  if (default_tbl[idx].type == 2) {                    floatdat = (float*)va_arg(argp, float*);                    if (default_tbl[idx].data != NULL) {                        *floatdat = atof(default_tbl[idx].data);                    } else  {                        *floatdat = 0.0;                    }                }                break;            }        }    }    va_end(argp);}//KEC#if 0int get_defaultdata(va_alist)va_dcl{    va_list  argp;    int   idx;    int   *intdat;    float *floatdat;    char  *chardat;    char  *keyword;    va_start(argp);    keyword = (char*)va_arg(argp, char*);    if (keyword != NULL) {        for(idx = 0;default_tbl[idx].type >= 0;idx++) {            if (strcmp(keyword, default_tbl[idx].name) == 0) {                if (default_tbl[idx].type == 0) {                    chardat = (char*)va_arg(argp, char*);                    if (default_tbl[idx].data != NULL) {                        strcpy(chardat, default_tbl[idx].data);                    } else  {                        chardat[0] = 0;                    }                } else  if (default_tbl[idx].type == 1) {                    intdat = (int*)va_arg(argp, int*);                    if (default_tbl[idx].data != NULL) {                        *intdat = atoi(default_tbl[idx].data);                    } else  {                        *intdat = 0;                    }                } else  if (default_tbl[idx].type == 2) {                    floatdat = (float*)va_arg(argp, float*);                    if (default_tbl[idx].data != NULL) {                        *floatdat = atof(default_tbl[idx].data);                    } else  {                        *floatdat = 0.0;                    }                }                break;            }        }    }    va_end(argp);}#endifint spccut(str, flg)char  *str;int   flg;{    int   idx;    int   len;    char  *buffer, *p;    if (str != NULL) {        buffer = (char*)XtMalloc(strlen(str) + 1);        memset(buffer, 0x00, strlen(str) + 1);        strcpy(buffer, str);        if (flg & 1) {                 /* 矢機(jī)誤の焊婁の鄂球猴近     */            for(p = buffer;*p == ' ';p++);            strcpy(str, p);            strcpy(buffer, str);        }        if (flg & 2) {                 /* 矢機(jī)誤の寶婁の鄂球猴近     */            len = strlen(buffer);            for(p = buffer + strlen(buffer) - 1;*p == ' ';p--) {                len --;                if (len < 1) {                    break;                }            }            *(p+1) = '\0';            strcpy(str, buffer);        }        XtFree(buffer);        buffer = NULL;    }}void quit(){    int  idx;    Atom window_id;/*-------------------------------------------------------------------*/    printf("waitdisp 姜位\n");                                       /* イベント流減慨借妄豺近     */    XtRemoveEventHandler(label, NoEventMask, True, recv_proc, NULL);    XtRemoveTimeOut(interval_id);      /* タイマ借妄豺近             */    for(idx = wait_num - 1;idx >= 0;idx--) {        if (waitdisp[idx].pid > 0) {   /* 山績面の茶燙がある眷圭     */            wait_disp_off(waitdisp[idx].pid);        }    }    window_id = XInternAtom(dpy, "__WAITDISP", False);    XDeleteProperty(dpy, RootWindow(dpy, 0), window_id);    if (waitdisp != NULL) {        XtFree(waitdisp);        waitdisp = NULL;    }    if (evt_tbl != NULL) {        XtFree(evt_tbl);        evt_tbl = NULL;    }    exit(0);                           /* 姜位                       */}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲第一电影网| 亚洲婷婷国产精品电影人久久| 天天爽夜夜爽夜夜爽精品视频| 欧美三级中文字| 麻豆一区二区三区| 国产亚洲欧洲一区高清在线观看| 国产a级毛片一区| 国产精品美女久久福利网站 | 最新热久久免费视频| 99riav一区二区三区| 亚洲一区二区偷拍精品| 欧美猛男gaygay网站| 国产尤物一区二区| 最新成人av在线| 欧美一区国产二区| 国产另类ts人妖一区二区| 亚洲色图视频网| 91 com成人网| 国产高清无密码一区二区三区| 国产精品白丝在线| 91精品国产美女浴室洗澡无遮挡| 国产精品一区二区久久不卡| 亚洲欧美日韩在线播放| 91精品国产日韩91久久久久久| 丁香啪啪综合成人亚洲小说| 亚洲午夜精品在线| 国产丝袜欧美中文另类| 在线免费观看日本一区| 国产在线视视频有精品| 亚洲综合男人的天堂| 久久综合九色综合97婷婷女人| 91麻豆免费看| 国产成人午夜视频| 午夜精品福利在线| 亚洲欧洲性图库| 日韩一级片在线观看| 色久优优欧美色久优优| 国产精品一区二区视频| 亚洲国产日韩一级| 国产精品区一区二区三| 欧美一区二区三区播放老司机| 91亚洲大成网污www| 国产一区二区美女诱惑| 亚州成人在线电影| 成人免费在线视频观看| 精品sm捆绑视频| 欧美精品粉嫩高潮一区二区| 91麻豆国产自产在线观看| 国产伦精品一区二区三区视频青涩| 尤物av一区二区| 国产精品日韩精品欧美在线| 精品福利视频一区二区三区| 欧美日本在线看| 在线亚洲免费视频| www.日本不卡| 国产成人综合自拍| 国产乱子轮精品视频| 蜜桃av一区二区| 午夜婷婷国产麻豆精品| 亚洲一区二区三区四区五区中文| 国产精品久久久久一区| 中文字幕第一页久久| 久久午夜电影网| 久久蜜桃一区二区| 精品久久一二三区| 精品国产一区二区三区不卡| 日韩欧美一区二区不卡| 欧美一区二区三区人| 欧美久久婷婷综合色| 欧美色手机在线观看| 欧洲一区二区av| 欧美三级电影一区| 欧美日韩国产bt| 在线播放国产精品二区一二区四区 | 国产精品1区2区| 免费在线观看一区| 久久精品国产亚洲aⅴ| 久久9热精品视频| 国产一区二区在线视频| 国产一区二区在线免费观看| 国产一区二区三区综合| 国产福利一区二区三区视频| 国产乱子轮精品视频| 国产成人av在线影院| 高清在线观看日韩| 99精品久久久久久| 日本高清不卡一区| 欧美久久久影院| 精品乱人伦小说| 欧美—级在线免费片| 亚洲精品乱码久久久久久久久 | 欧美videossexotv100| 精品欧美一区二区久久| 国产区在线观看成人精品| 国产精品久久久久一区二区三区共| 亚洲人吸女人奶水| 视频一区二区不卡| 国产裸体歌舞团一区二区| 不卡电影一区二区三区| 欧美午夜精品理论片a级按摩| 91精品国产色综合久久不卡蜜臀| 久久久久久久久久久久久久久99| 成人免费在线播放视频| 亚洲一区二区欧美日韩| 久久99国内精品| zzijzzij亚洲日本少妇熟睡| 色婷婷狠狠综合| 欧美一区二区日韩一区二区| 国产欧美精品日韩区二区麻豆天美| 中文字幕一区二区三区乱码在线| 亚洲第一会所有码转帖| 激情综合色播五月| 91在线视频播放地址| 日韩一区二区三区免费看| 中文字幕一区二区三区四区| 视频一区免费在线观看| 国产91高潮流白浆在线麻豆| 欧美视频一区二区三区在线观看| 精品成人一区二区三区| 综合电影一区二区三区| 麻豆精品一区二区av白丝在线| 99久久精品免费精品国产| 在线不卡一区二区| 中文字幕亚洲一区二区va在线| 亚洲国产精品久久久久秋霞影院| 国产成人精品影视| 欧美日韩久久一区| 亚洲欧洲日韩一区二区三区| 日本成人中文字幕| 91国偷自产一区二区三区成为亚洲经典| 精品欧美乱码久久久久久1区2区| 一区二区在线观看免费视频播放| 狠狠色丁香久久婷婷综合丁香| 日本高清不卡一区| 国产精品网站在线播放| 久久99久久久欧美国产| 欧美最猛黑人xxxxx猛交| 国产欧美一区二区三区网站| 性做久久久久久久免费看| www.性欧美| 久久久亚洲午夜电影| 蜜桃精品视频在线| 7777精品伊人久久久大香线蕉最新版| 国产精品国产馆在线真实露脸| 国产一区二区视频在线| 欧美一区二区三区在线观看| 亚洲国产sm捆绑调教视频| 日本精品一区二区三区四区的功能| 久久久久久久精| 韩国在线一区二区| 日韩一区二区在线看| 亚洲成人免费视频| 欧洲一区在线电影| 亚洲一二三专区| 色婷婷综合久久久中文字幕| 国产精品久久夜| 成人国产视频在线观看| 国产精品―色哟哟| 国产凹凸在线观看一区二区 | 欧美激情中文字幕一区二区| 激情偷乱视频一区二区三区| 日韩免费视频线观看| 奇米综合一区二区三区精品视频| 欧美精品自拍偷拍| 亚洲mv在线观看| 777精品伊人久久久久大香线蕉| 天天免费综合色| 日韩亚洲欧美综合| 美国毛片一区二区三区| 精品国产乱码久久久久久牛牛 | 91色porny蝌蚪| 中文字幕亚洲精品在线观看| 97久久精品人人爽人人爽蜜臀| 国产精品青草久久| 色先锋aa成人| 天天影视色香欲综合网老头| 欧美一区二区三区免费大片 | 国产高清视频一区| 国产精品丝袜91| 在线一区二区视频| 日韩和欧美一区二区| 精品欧美一区二区久久| 国产大陆亚洲精品国产| 亚洲欧美激情一区二区| 在线精品视频免费观看| 日本vs亚洲vs韩国一区三区二区 | 国产一区二区福利视频| 欧美激情资源网| 日本黄色一区二区| 婷婷久久综合九色综合伊人色| 日韩欧美国产电影| 成人午夜激情影院| 午夜久久久久久久久久一区二区| 日韩情涩欧美日韩视频| 成人av午夜电影| 婷婷国产v国产偷v亚洲高清| 精品粉嫩aⅴ一区二区三区四区 | 欧美日韩另类国产亚洲欧美一级| 久久精品国产秦先生| 亚洲日本护士毛茸茸|