C++ 网络和锁定问题
c++ networking and locking issue
我的 C++ 应用程序管理多个套接字及其发送 + 接收。 为了忽略问题,我在套接字上发送接收之前通过信号灯进行锁定。当我在 100 台机器上运行应用程序时,我看到有时我的机器可能会有一段时间不发送它获得的消息的确认(我在 wireshark 中看到数据包和此数据包上的重新传输)。同样在这段时间里,我看到我的应用程序没有从它必须发送的内容中发送任何内容。
我的问题是:这个问题可能来自锁定机制的根本原因吗? 锁定机制 - 当我锁定套接字时是否也会导致操作系统在此套接字上不发送任何内容? 也许您还会知道:如何忽略此行为?
谢谢
哦
,这听起来不太好。 您应该提供应用程序设计的更多详细信息,尤其是锁定周围的一些代码。
锁定资源通常使用互斥锁完成,但初始化为 1 的信号量可以在推送时完成。
最重要的是:您是否正在处理锁内网络调用引发的所有异常?
相关文章:
- 警告处理为错误这里有什么问题
- 最小硬币更换问题(自上而下方法)
- 为"adjacent"变量赋值时出现问题
- 我的神经网络不起作用 [XOR 问题]
- 在Ubuntu 16.04上安装Cilk时出现问题
- C++我的数学有什么问题,为什么我的代码不能正确循环
- 编译包含字符串的代码时遇到问题
- Project Euler问题4的错误解决方案
- MCS 锁定实现的问题
- 仔细检查锁定问题,c++
- 以编程方式锁定注册表项以避免并发问题
- 线程读写锁定问题
- 升压错误锁定问题
- C++ 网络和锁定问题
- 问题5.3 QPlainTextEdit实现滚动锁定
- 这个解决方案对MSVC的双重检查锁定错误和函数静态有什么问题?
- 为什么lock_guard可以通过unique_lock获得一个已经锁定的互斥锁?-仍然有问题
- 发现可能由于线程锁定(可能)导致的性能问题
- Qt android屏幕锁定java问题
- perror()调用影响信号量锁定/解锁的问题