[Ace-users] [ciao-users] DomainApplicationManager_AMI_Impl + Race Condition?
Sowayan, Abdullah (N-DUA)
abdullah.sowayan at lmco.com
Wed Oct 24 13:38:55 CDT 2007
Johnny,
Sure, I'll make the changes.
Thanks,
Abdul
> -----Original Message-----
> From: Johnny Willemsen [mailto:jwillemsen at remedy.nl]
> Sent: Wednesday, October 24, 2007 2:02 PM
> To: ciao-users at mail.cse.wustl.edu
> Cc: Sowayan, Abdullah (N-DUA)
> Subject: Re: [ciao-users] DomainApplicationManager_AMI_Impl + Race
> Condition?
>
> Hi,
>
> Thanks for using the PRF form. I agree with your comments, can you
make
> the
> changes?
>
> Johnny
>
> "Sowayan, Abdullah (N-DUA)" <abdullah.sowayan at lmco.com> wrote in
message
> news:<mailman.2637.1193244787.5286.ciao-users at mail.cse.wustl.edu>...
> > CIAO VERSION: 0.6.1 (SVN HEAD Also)
> >
> > In the following file:
> >
CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_AMI_Impl.h
> >
> > class DomainApplicationManager_Export
DomainApplicationManager_AMI_Impl
> > : public DomainApplicationManager_AMH_Impl
> > {
> > /// AMI reply count
> > volatile int start_launch_reply_count_;
> > };
> >
> > Why is the counter volatile? Is this an attempt to eliminate race
> > conditions when the variable is accessed concurrentl? If so, the I'd
> > have to note that volatile doesn't protect aginst concurrent access,
we
> > should use ACE_Atomic_Op<ACE_Thread_Mutex, long> instead (on certain
> > platforms, this construct does not incur the price of a mutex lock,
> > because it expands to assembly code with automic instructions).
> >
> >
> >
> > These following method implementations (found in the CPP file) use
the
> > counter variable. They should be placed in an inline file (*.inl)
> > because that's to convention we use in the distribution for
non-virtual
> > methods that only have 1-3 lines of code.
> >
> > void
> > CIAO::DomainApplicationManager_AMI_Impl::
> > decrease_start_launch_reply_count ()
> > {
> > --this ->start_launch_reply_count_;
> > }
> >
> > int
> > CIAO::DomainApplicationManager_AMI_Impl::
> > start_launch_reply_count ()
> > {
> > return this->start_launch_reply_count_;
> > }
> >
> > Thanks,
> > Abdul
> >
More information about the Ace-users
mailing list