草庐IT

bsd_signal

全部标签

c++ - 强制删除 boost::signals2 中的插槽

我发现boost::signals2使用了一种对连接槽的延迟删除,这使得很难将连接用作管理对象生命周期的东西。我正在寻找一种方法来强制在断开连接时直接删除插槽。任何关于如何通过不同地设计我的代码来解决问题的想法也很感激!这是我的场景:我有一个Command类负责异步执行需要时间的操作,看起来像这样(简化):classActualWorker{public:boost::signals2OnWorkComplete;};classCommand:boost::enable_shared_from_this{public:...voidExecute(){m_WorkerConnectio

c++ - 强制删除 boost::signals2 中的插槽

我发现boost::signals2使用了一种对连接槽的延迟删除,这使得很难将连接用作管理对象生命周期的东西。我正在寻找一种方法来强制在断开连接时直接删除插槽。任何关于如何通过不同地设计我的代码来解决问题的想法也很感激!这是我的场景:我有一个Command类负责异步执行需要时间的操作,看起来像这样(简化):classActualWorker{public:boost::signals2OnWorkComplete;};classCommand:boost::enable_shared_from_this{public:...voidExecute(){m_WorkerConnectio

c++ - 使用 Boost.Signal 代替 Qt 的信号?没有moc吗?

我知道它们可以一起使用,但我想知道是否可以在程序的Qt部分(小部件等)中用Boost.Signal替换Qt的信号和插槽机制。有人试过吗?有什么陷阱吗?假设我不使用任何其他MOC功能并用boost.signal替换信号/插槽,是否可以完全不使用moc? 最佳答案 我考虑将它用于我的一个项目。根据项目,可能会困扰您的一个方面是使用QtDesigner.Qt-Designer在下面为它的GUI连接创建信号槽。所以,如果你碰巧使用了设计器,你最终会得到同时具有signals-slots和boost::signals的项目。将它们一起使用存在

c++ - 使用 Boost.Signal 代替 Qt 的信号?没有moc吗?

我知道它们可以一起使用,但我想知道是否可以在程序的Qt部分(小部件等)中用Boost.Signal替换Qt的信号和插槽机制。有人试过吗?有什么陷阱吗?假设我不使用任何其他MOC功能并用boost.signal替换信号/插槽,是否可以完全不使用moc? 最佳答案 我考虑将它用于我的一个项目。根据项目,可能会困扰您的一个方面是使用QtDesigner.Qt-Designer在下面为它的GUI连接创建信号槽。所以,如果你碰巧使用了设计器,你最终会得到同时具有signals-slots和boost::signals的项目。将它们一起使用存在

c++ - Qt5 : How to wait for a signal in a thread?

可能标题问题不是很明确。我在Windows7上使用Qt5。在某个线程(QThread)中,在"process()"函数/方法中,我必须等待"encrypted()"SIGNAL所属到我在这个线程中使用的QSslSocket。另外我想我应该使用QTimer并等待"timeout()"SIGNAL以避免在无限循环中被阻塞...我现在拥有的是://startprocessingdatavoidWorker::process(){status=0;connect(sslSocket,SIGNAL(encrypted()),this,SLOT(encryptionStarted()));QTim

c++ - Qt5 : How to wait for a signal in a thread?

可能标题问题不是很明确。我在Windows7上使用Qt5。在某个线程(QThread)中,在"process()"函数/方法中,我必须等待"encrypted()"SIGNAL所属到我在这个线程中使用的QSslSocket。另外我想我应该使用QTimer并等待"timeout()"SIGNAL以避免在无限循环中被阻塞...我现在拥有的是://startprocessingdatavoidWorker::process(){status=0;connect(sslSocket,SIGNAL(encrypted()),this,SLOT(encryptionStarted()));QTim

c++ - POSIX 套接字和 BSD 套接字有什么区别?

有人能解释一下POSIX套接字和BSD套接字之间的区别吗? 最佳答案 如http://www.openss7.org/papers/strsock/sockimp.pdf中所述:BerkeleySockets.SocketsusestheBSDinterfacethatwasdevelopedbyBBNfortheTCP/IPprotocolsuiteunderDARPAcontracton4.1aBSDandreleasedin4.2BSD.BSDSocketsprovidesasetofprimaryAPIfunctionsth

c++ - POSIX 套接字和 BSD 套接字有什么区别?

有人能解释一下POSIX套接字和BSD套接字之间的区别吗? 最佳答案 如http://www.openss7.org/papers/strsock/sockimp.pdf中所述:BerkeleySockets.SocketsusestheBSDinterfacethatwasdevelopedbyBBNfortheTCP/IPprotocolsuiteunderDARPAcontracton4.1aBSDandreleasedin4.2BSD.BSDSocketsprovidesasetofprimaryAPIfunctionsth

c++ - Qt问题: How do signals and slots work?

信号和槽如何在高级抽象中工作?信号和槽是如何在高级抽象中实现的? 最佳答案 我实际上已经阅读了这个Qt页面,它很好地解释了:https://doc.qt.io/qt-5/signalsandslots.html 关于c++-Qt问题:Howdosignalsandslotswork?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1368593/

c++ - Qt问题: How do signals and slots work?

信号和槽如何在高级抽象中工作?信号和槽是如何在高级抽象中实现的? 最佳答案 我实际上已经阅读了这个Qt页面,它很好地解释了:https://doc.qt.io/qt-5/signalsandslots.html 关于c++-Qt问题:Howdosignalsandslotswork?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1368593/