进一步阅读

进一步阅读

在查看一些实现 FastCGI 客户端的示例时,我遇到了一些奇怪的代码。

#include <fcgi_stdio.h>
#include <stdlib.h>
int main(void) {
    while(FCGI_Accept() >= 0)
        printf("Content-type: text/html\r\n\r\n"
               "Got a <i>%s</i> request\n",
               getenv("REQUEST_METHOD"));
    return 0;
}

对我来说,看起来该进程总是会获得相同的值getenv(...),但似乎其目的是从父进程读取数据。

子进程运行时父进程可以更新子环境吗?

答案1

不。

但是该FCGI_Accept()函数可以在每次调用时更新当前进程的环境(C 库的副本),这当然就是它的作用。

确实,不保留调用结果getenv()具体来说在该函数的 doco 中调用。这样你就可以计算出这个页面上有多少人阅读了 doco。 (-:

进一步阅读

  • FCGI_AcceptFCGI手册。 Open Market, Inc.。1996 年。存档于 opensource.apple.com。

相关内容