我正在使用 C 编写的嵌入式 http 服务器工作,该服务器最初使用 fork() 来处理每个客户端请求。我将其切换为使用 pthread_create 而不是 fork()。
在内存使用比较黑白 fork() 和线程版本期间,我观察到这是顶部列出的 %VSZ 利用率的变化。fork() 版本报告的 %VSZ 高于 pthread_create()。
谁能解释为什么会有这种变化,因为据我认为我所做的所有变化都与创建线程有关。我无法确定它是如何改变进程的虚拟内存大小的。
我正在使用 C 编写的嵌入式 http 服务器工作,该服务器最初使用 fork() 来处理每个客户端请求。我将其切换为使用 pthread_create 而不是 fork()。
在内存使用比较黑白 fork() 和线程版本期间,我观察到这是顶部列出的 %VSZ 利用率的变化。fork() 版本报告的 %VSZ 高于 pthread_create()。
谁能解释为什么会有这种变化,因为据我认为我所做的所有变化都与创建线程有关。我无法确定它是如何改变进程的虚拟内存大小的。