Comments (3)
Hey Tom,
Well we do not lock anything on writing over self.conn, however for this
concurrent access style would recommend using FSockPool type since that
is able to raise connections as you need them. Not sure if locking
self.conn would help in cases when there it takes a long time to
FreeSWITCH to answer (eg: call originate command).
Let me know how you see it.
Thanks,
DanB
from fsock.
Btw, this is an example of how we use the pool (after int with New...):
"""
fsConn, err := PopFsConn()
if err != nil {
return err
} else {
defer PushFsConn(fsConn)
}
if _, err := fsConn.SendApiCmd(cmdStr); err != nil {
return err
}
"""
DanB
On 03.06.2014 13:11, TomP wrote:
Hi,
I'm not sure if this an issue or not, more of a discussion.
If register an event handler that is called multiple times
concurrently (for example from multiple calls) and that event requires
that I generate a 'response' back to Freeswitch using the SendMsgCmd()
function.My event handlers have access to the FSock pointer variable, so can
call SendMsgCmd() from inside their event handler Go routine.If multiple Go routines call SendMsgCmd() at the same time, do the
response get muddled, or does SendMsgCmd() lock self.conn before
writing to it?—
Reply to this email directly or view it on GitHub
#3.
from fsock.
Thanks Dan, much appreciated will go that route.
from fsock.
Related Issues (10)
- Possible concurrent issue HOT 3
- Possible concurrency issue - events not being executed sequentially. HOT 6
- problem parsing fs cvs HOT 2
- cgrates/fsock: Issue with evfilters (Support to handle multiple Event values in the same Filter) HOT 3
- nil pointer panics handling bgapi requests
- Error starting example from README
- Does not read buffer correctly on slower connections. HOT 7
- Why does SendApiCmd return header and body concatenated HOT 12
- Support for bgapi HOT 8
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 fsock.