我的迷你项目是实现一个c套接字程序,其中多个客户端将文件发送到两个或三个服务器。我实现了这些。但是对于处理客户端请求我需要创建一个子进程吗?我怎样才能做到这一点 。比如必须单独处理请求。请任何人指导我这样做。
答案 0 :(得分:3)
通常的多进程服务器通常看起来像这样(伪代码):
passive_socket = create_listening_socket()
for (;;)
{
new_socket = accept(passive_socket)
if (fork() == 0)
{
/* In child */
read_from_socket(new_socket)
write_to_socket(new_socket)
/* Or do any other processing needed */
exit(0);
}
else
{
/* In parent */
close(new_socket)
}
}