You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by "Howard M. Lewis Ship (JIRA)" <de...@tapestry.apache.org> on 2008/05/09 20:58:55 UTC

[jira] Created: (TAPESTRY-2414) Change proxy generation to use atomic references rather than synchronized blocks

Change proxy generation to use atomic references rather than synchronized blocks
--------------------------------------------------------------------------------

                 Key: TAPESTRY-2414
                 URL: https://issues.apache.org/jira/browse/TAPESTRY-2414
             Project: Tapestry
          Issue Type: Improvement
          Components: tapestry-core
    Affects Versions: 5.0.11
            Reporter: Howard M. Lewis Ship
            Priority: Minor
             Fix For: 5.1


As currently coded, the service proxies used for Tapestry services use a synchronized block to a) check to see if the Registry has shut down and b) obtain (if needed) the realized service implementation (wrapped by interceptors, etc.).

It seems that with some juggling, these could largely be replaced with AtomicBoolean and AtomicReferences.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


[jira] Commented: (TAPESTRY-2414) Change proxy generation to use atomic references rather than synchronized blocks

Posted by "Howard M. Lewis Ship (JIRA)" <de...@tapestry.apache.org>.
    [ https://issues.apache.org/jira/browse/TAPESTRY-2414?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12595711#action_12595711 ] 

Howard M. Lewis Ship commented on TAPESTRY-2414:
------------------------------------------------

Of course, creating some benchmarks (for before and after comparisons) would be useful, to see if there's any real benefit to this.  Supposedly, uncontested synchronized blocks are very cheap (and cheaper in Java 6), and access to the volatile fields inside an AtomicBoolean are going to be more expensive than ordinary field access, so there may not be any real advantage.

> Change proxy generation to use atomic references rather than synchronized blocks
> --------------------------------------------------------------------------------
>
>                 Key: TAPESTRY-2414
>                 URL: https://issues.apache.org/jira/browse/TAPESTRY-2414
>             Project: Tapestry
>          Issue Type: Improvement
>          Components: tapestry-core
>    Affects Versions: 5.0.11
>            Reporter: Howard M. Lewis Ship
>            Priority: Minor
>             Fix For: 5.1
>
>
> As currently coded, the service proxies used for Tapestry services use a synchronized block to a) check to see if the Registry has shut down and b) obtain (if needed) the realized service implementation (wrapped by interceptors, etc.).
> It seems that with some juggling, these could largely be replaced with AtomicBoolean and AtomicReferences.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org


[jira] Updated: (TAP5-84) Change proxy generation to use atomic references rather than synchronized blocks

Posted by "Howard M. Lewis Ship (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/TAP5-84?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Howard M. Lewis Ship updated TAP5-84:
-------------------------------------

    Issue Type: Improvement  (was: Bug)

> Change proxy generation to use atomic references rather than synchronized blocks
> --------------------------------------------------------------------------------
>
>                 Key: TAP5-84
>                 URL: https://issues.apache.org/jira/browse/TAP5-84
>             Project: Tapestry 5
>          Issue Type: Improvement
>    Affects Versions: 5.0.15
>            Reporter: Howard M. Lewis Ship
>            Priority: Minor
>
> As currently coded, the service proxies used for Tapestry services use a synchronized block to a) check to see if the Registry has shut down and b) obtain (if needed) the realized service implementation (wrapped by interceptors, etc.).
> It seems that with some juggling, these could largely be replaced with AtomicBoolean and AtomicReferences.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org