Matthew,
Thank you for your kind response.
About cflow and cflowbelow, I have another question:
In the Programming Guide (or the Developers Guide), I remember reading that
cflow and cflowbelow are restricted to a single thread.
So, in the context of this program,
aspect PCFAspect percflow(execution (A.methodA())) {
// advices for some point cuts..
}
class A {
void methodA() {
doSomething1();
Thread t = new Thread(new B(this));
t.start();
doSomething2();
}
// .. other methods exist so that there are no compilation errors.
} // end of class A
class B implements Runnable {
A a;
B{A ainstance) {
this.a = ainstance;
}
public void run() {
if (shouldCallMethodA()) a.methodA(); // <= Refered to below
else a.doSomething3();
}
// .. other methods exist so that there are no compilation errors.
} // end of class B
Please validate these statements:
1. When the a.methodA() marked above is executed, the cflow of the (second)
methodA() execution will instantiate a new aspect instance
2. The cflow picked out by cflow(execution (B.run())) is not within the cflow
or cflowbelow of execution (A.methodA())
[Note: I have not compiled the above program.. I hope there are no material
errors, and that my questions' intention is conveyed unambiguously. If not,
please let me know..]
Thanks,
Balaji
----- Original Message ----
From: Matthew Webster <[EMAIL PROTECTED]>
To: [email protected]
Sent: Friday, September 29, 2006 4:04:44 AM
Subject: Re: [aspectj-users] Garbage collection of aspect instances
Balaji,
The statements are all correct without any qualifications.
Matthew Webster
AOSD Project
Java Technology Centre, MP146
IBM Hursley Park, Winchester, SO21 2JN, England
Telephone: +44 196 2816139 (external) 246139 (internal)
Email: Matthew Webster/UK/IBM @ IBMGB, [EMAIL PROTECTED]
http://w3.hursley.ibm.com/~websterm/
G Balaji <[EMAIL PROTECTED]>
Sent by: [EMAIL PROTECTED]
28/09/2006 19:34 Please respond to
[email protected]
ToAspectJ User Mailing List <[email protected]>
cc
Subject[aspectj-users] Garbage collection of aspect instances
Dear AspectJ Users,
Can the experts and/or knowledgeable people please validate these statements
below:
1. issingleton aspect instances are gc-ed(*) when the class loader that loaded
the aspects is gc-ed.
2. pertypewithin aspect instances are gc-ed when the class loader that loaded
the types is gc-ed.
3. perthis and pertarget aspect instances are gc-ed when this (or target) is
gc-ed.
4. percflow and percflowbelow aspect instances are gc-ed when the cflow (or
cflowbelow) are complete
(*) gc-ed => eligible for garbage collection.
If these statements are generally correct, but are qualified in certain
situations, I would be interested to know these situations too.
Thanks,
Balaji
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users