[Info-vax] DCL "READ/TIME_OUT=n" from terminal; timer resets if message written to screen
Arne Vajhøj
arne at vajhoej.dk
Tue May 25 08:28:06 EDT 2021
On 5/25/2021 8:09 AM, Simon Clubley wrote:
> On 2021-05-24, Arne Vajhøj <arne at vajhoej.dk> wrote:
>> On 5/24/2021 7:53 PM, Dave Froble wrote:
>>> On 5/24/2021 2:12 PM, Simon Clubley wrote:
>>>> On 2021-05-24, David Jones <osuvman50 at gmail.com> wrote:
>>>>> I imagine read/time_out=... is using the timeout feature of the
>>>>> terminal driver
>>>>> and not timer ASTs. The timeout is a feature of the wait for
>>>>> interrupt function
>>>>> in the kernel, which is why it resets for every character entered (as
>>>>> well as
>>>>> breakthru writes).
>>>>
>>>> _If_ that is the case, then the read timeout functionality is broken
>>>> IMHO because that is _very_ unexpected behaviour.
>>>
>>> I don't agree with what you wrote. Yes, I'd prefer a bit different
>>> operation, but, I can understand and accept what's there. Maybe could
>>> be better, but, not broken.
>
> It's unexpected because most people are not going to find the one
> paragraph deep in a low-level programmer's manual that documents this.
>
> They are going to look at other documentation sources where this very
> unexpected behaviour is not documented.
VSI already stated that they will update the DCL documentation to also
reflect that.
>> I agree.
>>
>> Not only is it what's there.
>>
>> As it turned out then it is actually documented behavior.
>>
>> Actual behavior is expected to follow documented behavior.
>>
>> It is almost guaranteed that there will be some functionality
>> where ones expectation without reading the documentation is
>> different from actual behavior.
>>
>
> This is the documented behaviour that most people are going to read:
>
> ---------------------------------------------------------------------------
> READ
>
> /TIME_OUT
>
> /TIME_OUT=n
> /NOTIME_OUT (default)
>
> Specifies the number of seconds after which the READ command is
> terminated if no input is received. If you enter the /TIME_OUT
> qualifier, you must specify a value from 0 to 255.
>
> If you enter both the /ERROR=label and /TIME_OUT qualifiers, and
> the time limit expires, the error branch is taken.
> ---------------------------------------------------------------------------
>
> That text is simple, clear to understand, and completely wrong.
It is not wrong. It is incomplete.
Arne
More information about the Info-vax
mailing list