[ https://issues.apache.org/jira/browse/HARMONY-6312?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Regis Xu updated HARMONY-6312:
------------------------------
Attachment: cancelledkey.diff
this patch is based on the previous one.
> Concurrency problems in NIO
> ---------------------------
>
> Key: HARMONY-6312
> URL: https://issues.apache.org/jira/browse/HARMONY-6312
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Environment: SVN Revision: 801399
> Reporter: Jesse Wilson
> Assignee: Mark Hindess
> Attachments: cancelledkey.diff, NIO_Concurrency_issues.patch
>
> Original Estimate: 72h
> Remaining Estimate: 72h
>
> There's several potential concurrency problems in our NIO implementation...
> - Charset#isSupported isn't synchronized, but it accesses mutable member cachedCharsetTable.
> - In SelectionKeyImpl, stHash++ is a non-atomic operation so multiple SelectionKey instances
may receive the same hash code. (Why not use the default hash code?)
> - In SelectorImpl, the unmodifiableKeys member is never synchronized on. But the documentation
specifies that clients can synchronize on that set to guard against changes
> These are the obvious problems; I suspect there are more subtle concurrency defects at
play here. I'll prepare a patch to address the major issues, and we should consider a rigorous
approach (Findbugs?) to discover concurrency problems.
> #Android
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
|