1. 程式人生 > >越努力越幸運--2-LD_PRELOAD, fork ,僵屍進程

越努力越幸運--2-LD_PRELOAD, fork ,僵屍進程

load 別人 新的 glib IT pre .cn 參考 問題

開始新的工作了,做了爸爸之後感覺一直都是渾渾噩噩,希望老婆和寶寶一直健康開心~

最近遇到的問題很多啊,哈哈

  1. 裝環境時候,需要的glibc 版本不對,我把本地的軟鏈接改了個別名(慣性思維),然後一堆基本的linux命令失效,原先的glibc也拿不過來了,尷尬。

  解決辦法:   LD_PRELOAD=/lib64/libc-2.5.so mv /lib64/libc.so.6.bak /lib64/libc.so.6

  2. 做壓力測試的時候,fork n個子進程,子進程有運行次數限制,當高並發的時候,父進程處理SIGCHLD可能會丟失信號,產生僵屍進程。

  解決辦法在父進程處加個SIGCHLD的處理方法

int SigChldProc(int iSigNo)
{
    pid_t tPid = 0;
    while ((tPid = waitpid(-1, NULL, WNOHANG)) > -1);
    return OK;
}

參考的別人的博文:https://www.cnblogs.com/wuchanming/p/4020463.html




越努力越幸運--2-LD_PRELOAD, fork ,僵屍進程