Comments (4)
I think you are looking for more of a request / response messaging pattern. We don't currently support that. When you publish the message it's sent out to all subscribers. It's a pub/sub model.
from foundatio.
Indeed that's what the code is expecting, though being familiar with the pub/sub model, the actual behaviour is exactly what I would have expected (the code was not written by me). However, looking at the code for the in-memory implementation it looks like everything is awaited all the way down, so I'm still wondering why is this not resuming execution only after all subscribers have run? As mentioned, I wrote a simple console app where the subscriber had a delay of a few seconds, and saw that being correctly recorded by the stopwatch. Do you care to elaborate a bit?
from foundatio.
PublishAsync is only publishing the messages which normally would mean sending that message to some sort of messaging server. The message handlers are then run separately. So even with the in memory implementation, the handlers are called separately from the publish.
from foundatio.
Makes total sense, just wanted to check whether I was missing something. Thanks for clarifying!
from foundatio.
Related Issues (20)
- Cancel queue job and clear the queue. Also disable job HOT 6
- Feature Request : Priority Queues HOT 2
- InMemoryCacheClient SetAllAsync doesn't respect Expiry HOT 1
- GetFileListAsync - searchPattern
- Unified messaging HOT 1
- Upgrade Deprecated Azure SDK Clients HOT 6
- Split Foundatio.Extensions.Hosting in two HOT 4
- DataDictionary.Empty is not protected by potential bugs. HOT 3
- Throw exceptions on IFileStorage instead of returning false or null. HOT 4
- the question of Foundatio.Lock.ILockProvider HOT 3
- [Not a Bug] Discord Channel? I want to commit some example code HOT 1
- Examples for DependencyInjection HOT 4
- SaveFile Overload with Stream HOT 4
- RobiniaDocs API Explorer
- locks in async context HOT 2
- Is Pulsar supported HOT 1
- Writing InMemory stream results in NotSupportedException HOT 5
- Feature suggestion: Foundatio component for key vaults HOT 9
- messaging supporting Pulsar? 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 foundatio.