Hi guys:
I read the source code of MINA3.0M2. The style of the code is very good, the 
structure is clear, the design is concise and efficient, especially the use of 
Selector is unexpected. However, the enqueueWriteRequest method and the 
processWrite method in the AbstractNioSession are somewhat flawed.
I see the source code in the enqueueWriteRequest method was originally 
"synchronized (writeQueue)", but was commented out, personal speculation may be 
the author feel that this treatment will affect performance.
My approach is to use CAS to ensure memory visibility and atomic, see I see the 
startSync, finishSync method, feeling that this may be more secure after some 
of the performance will not lose too much.
A little personal humble opinion.

Reply via email to