[
https://issues.apache.org/jira/browse/ZOOKEEPER-2842?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16113512#comment-16113512
]
ASF GitHub Bot commented on ZOOKEEPER-2842:
-------------------------------------------
Github user afine commented on a diff in the pull request:
https://github.com/apache/zookeeper/pull/308#discussion_r131261499
--- Diff:
src/java/main/org/apache/zookeeper/server/quorum/QuorumCnxManager.java ---
@@ -880,19 +876,20 @@ public void run() {
*
* @return boolean Value of variable running
*/
- synchronized boolean finish() {
- if(!running){
- /*
- * Avoids running finish() twice.
- */
- return running;
- }
- running = false;
-
- this.interrupt();
- threadCnt.decrementAndGet();
- return running;
- }
+ boolean finish() {
--- End diff --
I understand what you are trying to do here and why this is optimized. I'm
just concerned that that any performance increase here would not be worth the
decrease in readability.
> optimize the finish() of Send/RecvWorker in QuorumCnxManager and remove
> testInitiateConnection() and formates some codes
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: ZOOKEEPER-2842
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2842
> Project: ZooKeeper
> Issue Type: Improvement
> Components: quorum
> Reporter: maoling
> Priority: Trivial
>
> 1.the finish() of Send/RecvWorker in QuorumCnxManager changes to
> double-checked lock style
> [https://en.wikipedia.org/wiki/Double-checked_locking]
> ,a trivial code changes implement a smaller granularity lock to have a better
> perfermance in too fierce multithread situation.
> 2.testInitiateConnection() is redundant test function which is only used in
> TestCase,so I refactor it.
> 3.some codes don't abide to Java Programme Specification ,so I lift a finger
> to format them
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)