Comments (3)
Hi, what's the use case to remove all callbacks from a CallbackList? You may simply assign an empty CallbackList to the existing one to "clear" it, isn't it enough?
Note if we add such "clear" function in CallbackList, we also need to add similar functions to EventDispatcher and EventQueue, to keep the API consistent.
from eventpp.
The use-case is when a ComponentA har registered several callbacks with a ComponentB (which uses CallbackList internally). Often we want to unsubscribe (remove) the callbacks as the first step in the destructor of ComponentA so that it no longes receives callbacks. ScopedRemover will not work (as I see it) since we want to remove the callbacks before doing other clean-up in the destructor.
I will take a look at assigning an empty CallbackList.
from eventpp.
After careful consideration, I think it's not necessary to add such function.
There are several alternatives to achieve this,
1, Assign the existing CallbackList with an empty CallbackList.
2, Or use the reset
function in ScopedRemover
.
from eventpp.
Related Issues (20)
- Question regarding using handle to remove callback from list HOT 4
- Crash in winxp HOT 1
- EventQueue是异步的吗?/Is EventQueue asynchronous? HOT 9
- Is there some problem with the insertListener function? HOT 6
- no type named 'Mutex' in 'eventpp::MultipleThreading' HOT 2
- maybe a typo in argumentadapter.md document HOT 2
- Can you add an extra sample code for the Tutorials of EventDispatcher document HOT 10
- Clang compile error HOT 2
- [Question] Are event cbs, after a dispatch, processed async or sync? HOT 2
- Thread safety ? HOT 2
- Confusion about the parameters of the `eventpp::EventQueue.enqueue` HOT 1
- Run unittest failed HOT 4
- What is the difference between eventpp and libevent/libuv/libev HOT 1
- Dispatcher模板类型限定,如何适配任意的事件 HOT 1
- Heter Dispatchers - why aren't they default? HOT 4
- 如何实现不定参数调用? HOT 2
- New version release (vcpkg) HOT 3
- Documentation for eventmaker is out of date HOT 1
- Compilation failed when using 'counterRemover' for the 'HeterEventDispatcher' of two function lists HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eventpp.