Comments (2)
Can you give a use case? I'm not sure how that's useful.
Currently you can either call processOne
up to max_size times, or use processIf
and in the condition func, max_size is checked. However, note that processIf
will still loop through all items in the queue even if the condition func returns false.
from eventpp.
Sure -- use case is handling large amounts of market data. I've found it more performant to vectorize (batch) the consumption of data on the 'other side' of your queue data structure. This allows you to efficiently understand book state in multiple update scenarios, and, if you're re-publishing that data, you can optimize the writing. (ie. zeromq::sndmore)
However, taking a closer look at process()
I'm frankly not sure this would gain much as you would still need the for(auto & item : tempList)
and somehow build the event array from each unique event type, and then dispatch that.
Appreciate the work you've done here!
from eventpp.
Related Issues (20)
- Compilation error when calling processOne() in ordered Queue sample HOT 2
- Movable ScopedRemover HOT 3
- Problems with object slicing HOT 7
- how to dispatch a not static function? HOT 2
- Question: Is the EventQueue safe in multi-consumer cases? HOT 1
- Unit tests dont build HOT 3
- 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
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.