From: Adriano d. S. F. <adr...@gm...> - 2011-03-24 13:51:02
|
On 24-03-2011 06:14, Alex Peshkoff wrote: > On 03/23/11 17:29, Adriano dos Santos Fernandes wrote: >>> Adriano, are you serious that all described here is simpler than proxy >>> objects in engine? :-) >>> >> I'm *sure* it is. I showed you ~15 lines of code, against >> addRefs/releases around by Firebird and all-over-the-world users code. > > Most of addRef/release in firebird are done using smart pointers. > Therefore this is not a problem. > Of course it is. Currently why.cpp is completely unnecessarily overloaded by RefPtrs, References, etc. I'm rewriting it in much simple way. > What about users code - if user is not going to use an object in complex > MT environment he need not care about reference counters at all. May be > you did not pay attention, but detach, commit and all other calls, > closing handle, perform release automatically on successful completion. > > In MT environment existing inside exported object reference counters > will just help to minimize user code - remember your own words that if > someone needs MT safety he will have to completely implement logic > himself without reference counters? > Please let me know, with details, what *user* problem you want to solve making *user* call addRef in his MT program. Adriano |