Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] LTW:Synchronizing a non synchronized method

 

Ok Thanks Andy
Cordialement / Best regards

Jean-Louis Pasturel

-----Message d'origine-----
De : aspectj-users-bounces@xxxxxxxxxxx
[mailto:aspectj-users-bounces@xxxxxxxxxxx] De la part de Andy Clement
Envoyé : mardi 4 septembre 2012 19:46
À : aspectj-users@xxxxxxxxxxx
Objet : Re: [aspectj-users] LTW:Synchronizing a non synchronized method

Given that the default instantiation model is singleton (and that seems to
be what is getting used here), synchronizing on the aspect instance could
block more stuff depending on how many places you are advising.
Synchronizing on the target will allow instances to proceed in parallel.

I don't have a lot of experience using synchronized blocks in advice
though...

cheers,
Andy

On 4 September 2012 00:48,  <jeanlouis.pasturel@xxxxxxxxxx> wrote:
> Me again ...
> Perhaps a better pattern ?  All the code of the around advice is 
> synchronized
>
> What is the better/correct monitor ( this => the aspect or
> thisJoinPoint.getThis() => the woven class) ?
>
> public aspect MySynchronizor {
>
>     public  pointcut methods(): execution( public * 
> *..<class>.<methodToSynchronize>(..));
>
>     Object around(): methods() {
>         synchronized(this){  // or synchronized(thisJoinPoint.getThis())
?)
>                 Object retour = null;
>                 retour = proceed();
>                 ... Some stuff after  proceed
>                 return retour
>                 }
>         }
>  }
>
> Cordialement / Best regards
>
> Jean-Louis Pasturel
>
> -----Message d'origine-----
> De : aspectj-users-bounces@xxxxxxxxxxx 
> [mailto:aspectj-users-bounces@xxxxxxxxxxx] De la part de 
> jeanlouis.pasturel@xxxxxxxxxx Envoyé : mardi 4 septembre 2012 08:22 À 
> : aspectj-users@xxxxxxxxxxx Objet : [aspectj-users] LTW:Synchronizing 
> a non synchronized method
>
>
> To synchronize a not synchronized method, does this Aspect do 
> correctly the job ?
>
> public aspect MySynchronizor {
>
>     public  pointcut methods(): execution( public * 
> *..<class>.<methodToSynchronize>(..));
>
>     Object around(): methods() {
>         Object retour = null;
>         synchronized(this){
>                 retour = proceed();
>                 }
>         ... Some stuff after the proceed
>         return retour
>         }
>  }
>
> Cordialement / Best regards
>
> Jean-Louis Pasturel
>
>
>
>
>
> ______________________________________________________________________
> ______ _____________________________________________
>
> Ce message et ses pieces jointes peuvent contenir des informations 
> confidentielles ou privilegiees et ne doivent donc pas etre diffuses, 
> exploites ou copies sans autorisation. Si vous avez recu ce message 
> par erreur, veuillez le signaler a l'expediteur et le detruire ainsi 
> que les pieces jointes. Les messages electroniques etant susceptibles 
> d'alteration, France Telecom - Orange decline toute responsabilite si 
> ce message a ete altere, deforme ou falsifie. Merci.
>
> This message and its attachments may contain confidential or 
> privileged information that may be protected by law; they should not 
> be distributed, used or copied without authorisation.
> If you have received this email in error, please notify the sender and 
> delete this message and its attachments.
> As emails may be altered, France Telecom - Orange is not liable for 
> messages that have been modified, changed or falsified.
> Thank you.
>
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
>
>
> ______________________________________________________________________
> ___________________________________________________
>
> Ce message et ses pieces jointes peuvent contenir des informations 
> confidentielles ou privilegiees et ne doivent donc pas etre diffuses, 
> exploites ou copies sans autorisation. Si vous avez recu ce message 
> par erreur, veuillez le signaler a l'expediteur et le detruire ainsi que
les pieces jointes. Les messages electroniques etant susceptibles
d'alteration, France Telecom - Orange decline toute responsabilite si ce
message a ete altere, deforme ou falsifie. Merci.
>
> This message and its attachments may contain confidential or 
> privileged information that may be protected by law; they should not be
distributed, used or copied without authorisation.
> If you have received this email in error, please notify the sender and
delete this message and its attachments.
> As emails may be altered, France Telecom - Orange is not liable for
messages that have been modified, changed or falsified.
> Thank you.
>
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
_______________________________________________
aspectj-users mailing list
aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users



_________________________________________________________________________________________________________________________

Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
France Telecom - Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci

This message and its attachments may contain confidential or privileged information that may be protected by law;
they should not be distributed, used or copied without authorization.
If you have received this email in error, please notify the sender and delete this message and its attachments.
As emails may be altered, France Telecom - Orange shall not be liable if this message was modified, changed or falsified.
Thank you.



Back to the top