> Kan du ikke proeve at vise lidt mere af din kode? Hvorfor vil du ikke
> blokere?
Jeg har en ServerSocketChannel som jeg kan lave non-blocking accept() på.
Det fungerer fint og så står jeg med en SocketChannel hvis det går godt. Jeg
tager den Socket som er tilknyttet denne SocketChannel og gemmer den et godt
sted :) Lige nu har jeg kun en enkelt, men der kan komme flere.
Det er så disse Socket's jeg gerne, sådan ind imellem, vil læse fra uden at
blokere. Hvis der ikke er noget data er jeg ligeglad. Hvis der er data vil
jeg gerne have en "linje" (afsluttet med "\r\n").
Hvorfor er det forkert at bruge BufferedReader? Hvorfor virker det ikke?
> Hvis du ser eksemplet fra linket nedenunder - ved run() metoden, saa er
> den "normale" maade at lave non-blocking paa at man bruger en selector til
> at lytte paa IO "events" og saa laeser/skriver paa den IO kanal der fik
> eventet -- Og, det bruger man java.nio til i Java
>
http://shorterlink.com/?3574CM
Jeg ville nok kunne gøre det samme med en selector, men det undrer mig
hvorfor det her ikke fungerer. Det er kun ready() jeg har problemer med,
uden den burde da kunne tjekke available() fra den underliggende InputStream
som min Socket har givet mig.
Jeg har ikke lige styr på selectorer, men det kan jo blive nødvendigt :)
Jacob