c++ - 多线程中的套接字

标签 c++ sockets multithreading

我有一个项目,其中线程 A 在某个套接字上调用 Accept(...),然后将其传递给另一个线程,该线程在套接字上接收数据,然后关闭套接字。

调用 accept 的对象在线程 A 中永远不会关闭。这样安全吗?

线程 A 中的那个对象发生了什么?

最佳答案

套接字不是对象 - 它只是一个数字(或者可以想象为一个指针)。如果您将一个整数从一个线程传递到另一个线程,则没有问题——套接字也是如此。这假设您询问的是操作系统级别的套接字,而不是您或您正在使用的框架已经实现的某些套接字类,并且您只从其中一个线程访问套接字,这似乎是这种情况。

关于c++ - 多线程中的套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2944405/

相关文章:

c++ - 在着色器上计算标准化设备坐标会显示与在 cpu 上计算不同的结果

c++ - 比较对象可作为 const 调用

javascript - 在 Chrome 应用程序中无法取消暂停 TCP 服务器的 TCP 连接

node.js - NodeJS 和 Socket.io : Authentication across multiple modules

java - 将路径图像从java发送到python

c++ - 将构造函数参数变成模板参数

c++ - 尝试创建私有(private)成员数组,其大小从 C++ 中的初始化列表给出(<vector> 使用被禁止)

python - 了解 Python 队列并设置线程作为守护线程运行

c# - Thread.Sleep(0) 会放弃获得的 CPU 资源吗?

python - 如何在单个 PyQt GUI 实例中多处理多个绘图