Hmmm... I declared victory against this bug yesterday by adding IO$M_READERCHECK
to that IO$WRITEOF, but now, I can't get that to work.  It appears that the perl
process has read channels open to that mailbox (it's a read/write mailbox).

I can get it to work with IO$M_NOW (instead of IO$M_READERCHECK).  I was trying
that at about the same time I saw the documentation on IO$M_READERCHECK.  I must
have been exeuting the IO$M_NOW version instead of the IO$M_READERCHECK version
when I declared victory.

This definitely requires more careful testing.  I recall being vaguely uneasy
about using IO$M_NOW, but I don't really see a problem with it now.  Perl
deassigns the channel right after the QIOW (waits for the WRITEOF to be queued
successfully and then deassigns the channel).  I think that's OK.  

More testing, some research, more testing...

-----Original Message-----
From: Craig A. Berry
To: [EMAIL PROTECTED]
Sent: 2/19/00 1:57 AM
Subject: Re: Executing DCL-commands from Perl programs

At 3:26 PM -0800 2/18/2000, Brad Hughes wrote:
>Jordan Henderson wrote:
>>
>> That's a bug, allright.
>>
>> Looks to me like it's my_pclose() in VMS.C gets hung up trying to
write an EOF
>> to the pipe.  I haven't really debugged it, but I have some inductive
reasons to
>> believe this.
>>
>
>I very vaguely recall Charles mentioning something about this, or
something
>closely related, some time ago.  You might want to check the archives.

. . . and search for openpid.t, although I don't know whether all the
cases where that test hangs up are cases where all the mailbox readers
are gone.
____________________________________________
Craig A. Berry                   
mailto:[EMAIL PROTECTED]

Reply via email to