[kaffe] unix-pthreads accept timeout

Mathieu Dube mdube@8d.com
Wed, 7 Aug 2002 11:30:39 -0400


--------------Boundary-00=_3FCH8IH134P2HDJJD50M
Content-Type: text/plain;
  charset="iso-8859-1"
Content-Transfer-Encoding: 8bit

Well the thing is that it seems to be the same for the vm as it outputs this:

java.io.InterruptedIOException: Accept timed out or was interrupted

when there's a timeout.

Attached is a newer patch that does the same with the jthreadedTimedRead.

more comments welcome.

Later
-Mat
On Wednesday 07 August 2002 11:18, you wrote:
> > Ok,
> > 	I changed it. I also put a check to see if the timeout is 0 to pass NULL
> > to select() and added a timeout*1000 since usecs and millisecs arent the
> > same. My java programmer here seems to say it works.
>
> Why don't you use the structure suggested by the BREAK_IF_LATE
> macros and companions?  If select returns EINTR (which I don't think
> is illegal), then your code thinks it's a timeout.
>
> 	- Godmar

-- 
Mathieu Dube -- mdube@8d.com
8D Technologies Inc.
http://www.8d.com

--------------Boundary-00=_3FCH8IH134P2HDJJD50M
Content-Type: text/x-c;
  charset="iso-8859-1";
  name="timeout.diff"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="timeout.diff"

ZGlmZiBrYWZmZS0xLjAueC1jdnMva2FmZmUva2FmZmV2bS9zeXN0ZW1zL3VuaXgtcHRocmVhZHMv
c3lzY2FsbHMuYyBrYWZmZS9rYWZmZS9rYWZmZXZtL3N5c3RlbXMvdW5peC1wdGhyZWFkcy9zeXNj
YWxscy5jCjc4YTc5LDk4Cj4gc3RhdGljIAo+IGludAo+IHdhaXRGb3JUaW1lb3V0KGludCBmZCwg
aW50IHRpbWVvdXQpewo+IAlmZF9zZXQgcnNldDsKPiAJc3RydWN0IHRpbWV2YWwgdHY7Cj4gCWlu
dCByZXQ7Cj4gCj4gCUZEX1pFUk8oJnJzZXQpOwo+IAlGRF9TRVQoZmQsJnJzZXQpOwo+IAl0di50
dl9zZWMgPSAwOyAKPiAJdHYudHZfdXNlYyA9IHRpbWVvdXQqMTAwMDsKPiAKPiAJaWYgKHRpbWVv
dXQgPT0gTk9USU1FT1VUKSAKPiAJCXJldCA9IHNlbGVjdChmZCsxLCZyc2V0LE5VTEwsTlVMTCxO
VUxMKTsKPiAJZWxzZQkKPiAJCXJldCA9IHNlbGVjdChmZCsxLCZyc2V0LE5VTEwsTlVMTCwmdHYp
Owo+IAo+IAlyZXR1cm4gKHJldCk7Cj4gfQo+IAo0MDksNDIwYzQyOSw0MzUKPCAJamxvbmcgZGVh
ZGxpbmUgPSAwOwo8IAlpbnQgcjsKPCAKPCAJU0VUX0RFQURMSU5FKGRlYWRsaW5lLCB0aW1lb3V0
KQo8IAlmb3IgKDs7KSB7CjwgCQlyID0gYWNjZXB0KGZkLCBhZGRyLCBsZW4pOwo8IAkJaWYgKHIg
Pj0gMCB8fCAhKGVycm5vID09IEVXT1VMREJMT0NLIHx8IGVycm5vID09IEVJTlRSIAo8IAkJCQl8
fCBlcnJubyA9PSBFQUdBSU4pKSB7CjwgCQkJYnJlYWs7CS8qIHN1Y2Nlc3Mgb3IgcmVhbCBlcnJv
ciAqLwo8IAkJfQo8IAkJSUdOT1JFX0VJTlRSKHIpCjwgCQlCUkVBS19JRl9MQVRFKGRlYWRsaW5l
LCB0aW1lb3V0KQotLS0KPiAJaW50IHI9LTEscmV0Owo+IAkKPiAJcmV0ID0gd2FpdEZvclRpbWVv
dXQoZmQsdGltZW91dCk7Cj4gCWlmIChyZXQgPiAwKSB7Cj4gCQlyID0gYWNjZXB0KGZkLGFkZHIs
bGVuKTsKPiAJCVNFVF9SRVRVUk5fT1VUKHIsIG91dCwgcikKPiAJCXJldHVybiAocik7CjQyMWE0
MzcsNDM4Cj4gCj4gCQo0MzQsNDM4YzQ1MSw0NTQKPCAJamxvbmcgZGVhZGxpbmUgPSAwOwo8IAo8
IAlhc3NlcnQodGltZW91dCA+PSAwKTsKPCAJU0VUX0RFQURMSU5FKGRlYWRsaW5lLCB0aW1lb3V0
KQo8IAlmb3IgKDs7KSB7Ci0tLQo+IAlpbnQgcmV0Owo+IAkKPiAJcmV0ID0gd2FpdEZvclRpbWVv
dXQoZmQsdGltZW91dCk7Cj4gCWlmIChyZXQpIHsKNDQwLDQ0NWQ0NTUKPCAJCWlmIChyID49IDAg
fHwgIShlcnJubyA9PSBFV09VTERCTE9DSyB8fCBlcnJubyA9PSBFSU5UUiAKPCAJCQkJfHwgZXJy
bm8gPT0gRUFHQUlOKSkgewo8IAkJCWJyZWFrOwkvKiByZWFsIGVycm9yIG9yIHN1Y2Nlc3MgKi8K
PCAJCX0KPCAJCUlHTk9SRV9FSU5UUihyKQo8IAkJQlJFQUtfSUZfTEFURShkZWFkbGluZSwgdGlt
ZW91dCkKNDQ2YTQ1Nyw0NjEKPiAJZWxzZSB7Cj4gCQllcnJubyA9IEVJTlRSOwo+IAkJciA9IC0x
Owo+IAl9Cj4gCQo=

--------------Boundary-00=_3FCH8IH134P2HDJJD50M--