X-Git-Url: http://dolda2000.com/gitweb/?p=jagi.git;a=blobdiff_plain;f=src%2Fjagi%2Fevent%2FDriver.java;fp=src%2Fjagi%2Fevent%2FDriver.java;h=8fe83a7e4b55bc7011bad467c7957f0d984e1c0a;hp=6ee920f7f7ad72bbd61740f36e0de1dec7399ac7;hb=1ee6412bc01b15aa8fad07a8bbce694ca099a8cb;hpb=a1480d6f1457fab85b52f3caab83baa527ae0571 diff --git a/src/jagi/event/Driver.java b/src/jagi/event/Driver.java index 6ee920f..8fe83a7 100644 --- a/src/jagi/event/Driver.java +++ b/src/jagi/event/Driver.java @@ -184,6 +184,11 @@ public class Driver { void add(Watcher w, SelectableChannel ch) { if(watching.containsKey(w) || paused.containsKey(w) || timeheap.contains(w)) throw(new IllegalStateException(w + ": already registered")); + try { + ch.configureBlocking(false); + } catch(IOException e) { + throw(new RuntimeException(ch + ": could not make non-blocking", e)); + } int evs = w.events(); double timeout = w.timeout(); boolean hastime = timeout < Double.POSITIVE_INFINITY;