We're updating the issue view to help you get more done. 

the locking in MultiFn.java (synchronized methods) can cause lots of contention in multithreaded programs

Description

if you call a single multimethod a lot in multithreaded code you get lots of contention for the lock on the multimethod. this contention slows things down a lot.

this is due to getMethod being synchronized. it would be great if there was some fast non-locking path through the multimethod.

Environment

None

Status

Assignee

Stuart Sierra

Reporter

Kevin Downey

Labels

Approval

Ok

Patch

Code and Test

Fix versions

Priority

Major