[asterisk-dev] OT: Refecence counting (was invasive fixes to chan_iax2 in 1.4)
vasil at ludost.net
Fri Aug 17 15:59:48 CDT 2007
В пт, 2007-08-17 в 16:20 -0400, Russell Bryant написа:
> Another reason that I chose to go with astobj2 was that I *know* this is not the
> end of problems of this type. In fact, there is a nice set of crashes on the
> bug tracker which the fix will be converting the ast_channel struct over to a
> reference counted object model, which is going to be a big job. Since we are
> likely going to have to do more conversions of object handling to this method, I
> figured it was worth bringing in astobj2 to 1.4 so that we can use it as needed,
> and not do all of this work using a model that we know will be deprecated in the
> near future.
This has been a pet peeve of mine, that a lot structures in asterisk
aren't reference-counted and are accessed from a lot of threads with
some extremely weird locking rules. A general reference-counting for
_everything_ that's used cross-thread would fix a lot of weird problems.
(yes, I know code talks, bullshit walks, but there are some pretty
serious reasons for me not to dive in that code, like lack of time...)
The same problem might arise with the cdr structures, for example, I had
some pretty weird problems with some of our custom development and the
handling of the CDRs (that changed in weird ways) in 1.4...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 189 bytes
Url : http://lists.digium.com/pipermail/asterisk-dev/attachments/20070817/c06817b8/attachment.pgp
More information about the asterisk-dev