Path: utzoo!attcan!uunet!wuarchive!usc!apple!oliveb!amiga!kodiak From: kodiak@amiga.UUCP (Robert R. Burns) Newsgroups: comp.sys.amiga.tech Subject: Re: Aborting TimerReq (answer and a question) Keywords: timer.device AbortIO() WaitIO() Wait() Message-ID: <4917@amiga.UUCP> Date: 26 Nov 89 00:33:37 GMT References: <4499@blake.acs.washington.edu> <4883@amiga.UUCP> <5509@cps3xx.UUCP> Reply-To: kodiak@batgirl.UUCP (Robert R. Burns) Organization: Commodore-Amiga Inc, Los Gatos CA Lines: 26 In article <5509@cps3xx.UUCP> porkka@frith.UUCP (Joe Porkka) writes: )A related question: In general (any specifics please) is the following )sequence of calls valid: ) ) p = CreateExtIO(myport, sizeof(*p)); ) OpenDevice(device.name , 0, p, flags); ) ) /* Note that there are *no* SendIO(p) or DoIO(p) calls here */ ) AbortIO(p) ) WaitIO(p); ) ) /* Finish clean up here */ ) )The only thing that I think may have problems is the WaitIO(p) call. )Would it? This example is not valid. CreateExtIO/OpenDevice does not guarantee that the message type is ever set to NT_REPLYMSG, so WaitIO will actually Wait -- you'll never get to your cleanup code. - Kodiak -- Bob Burns, amiga!kodiak _ | /_ _|. _ | Commodore __ |_) _ |_ _ )' |<(_)(_)|(_\|< /\ | ||| _` /\ |_)(_\| )(_\ | | \ Software ___/..\|\/|||__|/..\___ Faith