cost 88 ms
無法向 boost::signals2::signal 添加不可復制的連接

[英]Can't add a non-copyable connection to boost::signals2::signal

我正在實現一個包裝器,它允許我將我的處理程序(在本例中為 Widget 對象)完美地轉發到一個可調用對象中,然后我可以將其用作信號處理程序。 我設法通過將我的處理程序作為元組轉發來做到這一點,因此當左值引用作為參數傳遞以添加 function 時,元組存儲對我的 object 的引用。 在這種情況下 ...

是否可以使用異步組合器創建 boost::signal2?

[英]Is it possible to create boost::signal2 with asynchronous combiner?

對於一個項目,我嘗試創建異步升壓信號,它似乎工作,但 valgrind 告訴我相反。 在下面的示例中,您可以看到一個基本的實現和用法。 對於這個例子,我需要一個異步信號,因為信號是在 SET function 中觸發的,它鎖定了互斥鎖,並且插槽嘗試調用 GET,它也鎖定了互斥鎖。 是的,我可以在信 ...

提升信號2 和 std::shared_ptr?

[英]Boost signals2 and std::shared_ptr?

是否可以(在編譯時)配置boost::signals2以使用std::shared_ptr而不是boost::shared_ptr ,例如在boost::signals2::deconstruct之類的調用中? 我正在使用提升 1.68 ...

在單獨的線程上調用 boost 信號 2 插槽

[英]call boost signals2 slot on a separate thread

如何在不阻塞發出信號的線程的情況下在單獨的線程上調用 boost 信號 2 插槽? 我想通過 QueuedConnection 參數獲得 Qt5 QObject::connect的功能; 有關 Qt5 的詳細信息,請參閱Threads 和QObjects 。 也就是說,我需要能夠發出 boost 信 ...

使用 boost::signals2::scoped_connection object 作為 class 的成員來實現自動連接壽命是否安全?

[英]Is it safe to use a boost::signals2::scoped_connection object as member of a class for automatic connection lifetime?

我想知道以下代碼是否安全,因為信號可能由不同的線程觸發: 編輯:為some_action添加了一個虛構的資源、析構函數和一個實現,以使其更加清晰。 有了這個問題,我想澄清一下我的假設是否正確,即信號槽可能在Foo的析構函數之后但在scoped_connection的析構函數之前調用。 為簡潔起見, ...

boost 信號和槽不在不同的線程中工作(使用 boost::asio::io_service)

[英]boost signal and slot not working in different thread (using boost::asio::io_service)

我編寫了一個小測試程序來了解 boost 提供的signal and slot機制以及它們在不同線程中發布時的行為。 我想在不同的線程中調用插槽,但是我的程序的 output 顯示插槽沒有在發出信號的不同線程中被調用。 程序的output為: 我懷疑io_service的post()方法工作不正常 ...

用 C++11 信號替換 boost-signals2

[英]Replacing boost-signals2 with C++11 signals

我是一名研究程序員,為無人駕駛車輛開發自主系統,我正在修改另一個項目的一些開源代碼,以制作用於車輛控制的驅動程序。 這個想法是有一個模塊,它通常處理加載特定於車輛的驅動程序作為庫的控制,現有實現使用 boost::signals2 將模塊函數調用綁定到驅動程序。 由於這是它目前唯一使用 boost ...

將返回值強制轉換為模板化類型

[英]Cast return value to templated type

我有以下模板類。 由於R可以為空,所以我在行上收到無效的間接編譯錯誤 由於它是模板類,因此似乎無法通過運行時檢查來解決。 一個人不能返回“類型”無效。 我該如何解決? ...

C ++ Boost信號和插槽連接

[英]C++ Boost signals and slots connection

我正在嘗試使用boosts信號和插槽將gui連接到我的邏輯線程,邏輯類具有一種將函數連接到信號的簡潔方法。 這是locig類的簡化副本: 這是gui類的簡化副本 在我的代碼中的某個時候,gui類已經被實例化,但是邏輯類沒有被實例化。 因此,我想實例化LogicClass並將G ...

使用boost.signals2中繼信號

[英]Relaying a signal with boost.signals2

如下面的代碼所示(作為問題的示例實現),我試圖將信號從內部類發送到中層,然后將其中繼到外部類。 而不是預期的結果: 運行該程序時,實際發生的是: 其次是崩潰。 我已經注意到處理程序中“ this”的地址與常規方法中的地址不同,但是我不知道如何解決。 我為此找到 ...

括號中的括號對於Boost信號意味着什么?

[英]What do parentheses mean within angle brackets for a Boost signal?

在我的基本c ++書中,沒有類似下面的類聲明。 我的奇怪代碼是...... 圓括號中的東西( const std:::string ...)不是typename而是實例。 怎么可能呢? 上面的代碼編譯得很好。 ps模板類( signal )代碼是 ...

C ++ shared_ptr std :: bind和std :: function

[英]C++ shared_ptr std::bind and std::function

我有以下幾點: 類B監聽類C的boost::signal2 ,當被觸發時將執行類A給出的回調,並執行類A的方法 A , B和C , D均為std::shared_ptr 。 問題在於,當類D釋放指向類B的指針時,由於信號處理程序的原因,不會刪除B 即使我在boost::con ...

執行的槽位在哪個線程中?

[英]In which thread are the slots executed?

假設我有四個線程,具有以下對象: 線程1:管理boost::signals2對象。 說它s 。 線程2:管理X對象和對s的引用。 調用X對象o2 。 成員函數X::do()連接到s ,通過o2執行。 線程3:管理Y對象和對s的引用。 調用Y對象o3 。 成員函數Y:: ...

Boost Signals2:如何注冊鼠標單擊和按鍵等事件?

[英]Boost Signals2: How do I register events such as mouse clicks and key presses?

目前,我正在開發一個游戲,並且打算使用signal2庫在C ++中進行事件處理。 但是,我不知道它們如何組合在一起,因為我想進行諸如“按按鍵”和“單擊鼠標”之類的事件,以及諸如套接字上的傳入連接之類的事件。 如何注冊這些事件? 似乎該庫用於這種類型的事物,但是在線似乎沒有任何跡象表明如 ...

boost :: signal2使用enable_if綁定到純函數或成員函數

[英]boost::signal2 bind to pure or member function using enable_if

我目前正在嘗試實現一個類的成員函數,該成員函數允許設置本身是成員函數(可能是不同類的成員)或不屬於類的純函數的回調。 有了這樣的課程, 適用於非成員方法。 但是,我在某種程度上無法實現使用戶連接到not的成員的某種努力。 這是我嘗試的: 由其他類的成員函數調用,如下所示 ...

如何防止signal2 :: scoped_connection在Disconnect()中中止?

[英]How can I prevent signals2::scoped_connection from aborting in disconnect()?

我正在使用boost :: signals2並遇到連接管理問題。 我將scoped_connections存儲在稍后被修剪的列表中。 但是,我發現如果擁有關聯信號的對象已被破壞,則scoped_connection :: disconnect()將中止,因為它的某些字段現在無效。 C ...

使用信號處理程序觸發事件時,如何使boost.msm正確更改狀態?

[英]How do I get boost.msm to properly change state when using a signal handler to trigger events?

使用信號處理程序觸發事件時,我的( boost.msm )狀態機似乎“回滾”。 但是,當我使用直接調用來觸發事件時,狀態機的行為正確。 我查看了boost文檔並在網上搜索,但是似乎所有示例都使用直接調用來觸發事件。 我也搜索了SO,但找不到解決此主題的任何東西。 我正在學習boo ...

在另一個std :: function中包裝c ++ 11 std :: function?

[英]Wrap c++11 std::function in another std::function?

我想將一個std :: bind()或lambda的結果包裝在一個幫助函數中,該函數跟蹤函數調用的執行時間。 我想要一個可以使用任意數量的參數(和類方法)的通用解決方案,並且兼容c ++ 11。 我的目的是獲取包裝函數並將其傳遞給boost :: signals2 :: signal,因 ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM