【发布时间】:2012-12-28 13:21:12
【问题描述】:
我的应用程序在服务器端和客户端创建文件传输线程。现在我在客户端使用延迟策略(一个简单的 for 循环),以便客户端中的线程创建在服务器中的线程创建过程之后完成。
该应用程序运行良好。但这很粗糙,如果不是丑陋的话。我需要找到一种技术方法,以便客户端线程在知道服务器线程已启动之前不会启动。
我尝试使用从服务器到客户端的 send()。客户端的recv() 必须阻止服务器的信号,但显然它没有。客户端控制台上的消息是关于连接被服务器拒绝的。请问有什么提示吗?
【问题讨论】:
-
套接字未连接不会阻塞它。
-
我认为您必须使用单独的 tcp/udp 连接进行文件传输。
-
这些线程是在一个应用程序中,还是在两个不同的应用程序中?您写了“为服务器端和客户端的文件传输创建线程”,这听起来像是您在不同的机器上拥有不同的应用程序。如果是这样,它们是如何开始的?当机器启动文件传输线程时,它们是否已经通过另一个通道进行通信?
标签: c linux pthreads client-server