Java Nio ? ??? I/O? ?? ??? ? I/O ??? ????? ?????. 1. NIO? ??, ?? ? ???? ?????? ?? ??? ? ?? I/O ? ?? ??? ??? ?????. 2. AIO? ??? ??? ?? ?? ??? ?? ???? ?????? ?? ?? ??? ?? ?????. 3. NIO? ????? ????? ???? ?? ??? ???? ?????. AIO? ?? ????? ? ??? ?????. 4. ?? ??, ??? ??, ??? ??? ? ?? ??? ??? ????? ?????. Netty? ?? ??? ??? ??? ???? ???? ??? ?? ?? ?? ? ??? ??? ???? ??? ??? ???? ?? ????.
Java Nio (New I/O) ? ??? I/O? ?? ?? ?? ?? ?? I/O ??? ??? ?? ? ? ???, ?? ??? ?? ????? ?????? ??? ?????. ??? Java I/O? ???? ?? ?? ???? ??? NIO? ??? ??? ??? ???? ? ? ???? ? ??? ? ??? ?? ??? ?????.

??? Java Nio ? ??? I/O? ????? ???? ???? ???? ??????.
1. Java Nio ?? : ??, ?? ? ???
Java 1.4?? ?? ? Java Nio? ??? ?? I/O?? ?? ? ?? ?? ??? ?????. ?? ?? ??? ??? ????.

- ?? : ??? ???? (? :
ByteBuffer
,CharBuffer
)? ???? ??? ??? ??? ??? ????. - ?? : ??? ???? ?? ? ??? I/O ?? (??, ??)? ?? ??. ???? ?? ??? ??? ??????.
- ??? : ?? ???? ???? ?? ?? ??? ??????? ????? (? : ?? ??? ? ???).
??? ?? ??
- ? ??? ?? : ??? ? ??? ???? ????? ?? ? ? ????. ???? ??? ??? ?? ?? ?? ?? ?????.
- ????? ????? : ?? ????
Selector
???? ?? ??? ?? ? ? ????. ??? ?? ??? ???? ??? ??????.
selector selector = selector.open (); serversocketchannel serverChannel = serversocketchannel.open (); ServerChannel.bind (New InetSocketAddress (8080)); ServerChannel.configureBlocking (false); ServerChannel.register (selector, selectionKey.op_accept); while (true) { selector.select (); // ?? ??? ??? ?? ? ??? ????? <selectionkey> keys = selector.selectedKeys (); for (selectionkey ? : ?) { if (key.isacceptable ()) { // ? ??? ????? } else if (key.isreadable ()) { // ???? ???? ???? } } Keys.clear (); }
? ??? ???? ?? ??, ??? ?? ??? ??? ?????? Great? ?? ?? ?? ?? ?? ??? ?? ? ? ????.
2. java.nio.channels.asynchronous ??? ?? ??? I/O (AIO)
Java 7 (Nio.2)? ?? ? ??? I/O? ? ?? ? ?????. ?? ?? ??? ?? ??? ?? ?? ????? ??? ???? ??? ?? ? ? ????.

?? ????? :
-
AsynchronousSocketChannel
-
AsynchronousServerSocketChannel
-
AsynchronousFileChannel
?? ???? ?? AIO ??
asynchronousserversocketchannel server = asynchronousserversocketchannel.open (); Server.bind (New InetSocketAddress (8080)); server.cept (null, new wompletionhandler <Asynchronoussocketchannel, void> () { @?? ?? void ?? (Asynchronoussocketchannel ?????, ?? ?? ??) { // ?? ??? ????? Server.cept (null, this); // ??????? ???? ??? ?? ?? = Bytebuffer.allocate (1024); client.read (??, null, new wompletionhandler <integer, bytebuffer> () { @?? ?? ?? ?? (?? ??, ?? ? ?? buf) { if (result> 0) { buf.flip (); // ???? ??? client.write (buf, buf, new wompletionhandler <integer, bytebuffer> () { @?? ?? ?? ?? (?? ??, ??? ?? ??) { buffer.compact (); } @?? ?? void ?? (Throwable Exc, Bytebuffer Buffer) { try {client.close (); } catch (ioexception e) {} } }); } } @?? ?? void ?? (Throwable Exc, Bytebuffer Buf) { try {client.close (); } catch (ioexception e) {} } }); } @?? ?? ?? ?? (Throwable Exc, void Attachment) { // ??? ????? } });
? ?? ?? ?? ??? ??? ?? ??? ??? ?? ??? ??? ?? ????? ?????.
??? ?? AIO ??
? ??? ??? ?? Future
? API? ??? ?? ????.
asynchronoussocketchannel client = asynchronoussocketchanchann.open (); Future <void> connectop = client.connect (new inetSocketAddress ( "localHost", 8080)); connectop.get (); // ??? ????? ??? ?? ?? = bytebuffer.wrap ( "hello".getBytes ()); Future <integer> writeop = client.write (??); int byteswritten = writeOp.get ();
??? ????? ? ??? .get()
?? ????? ?? ? ???? ?? ? ?????.
3. NIO ? AIO? ??????
NIO? AIO? ???? ?? ?? ???? ???? ?? ????.
?? | NIO (??? ??) | AIO (??? I/O) |
---|---|---|
??? ?? | ??? ?? (??? ??) | ProCactor ?? (OS ?? ???) |
OS ?? | ????? ????? | ?? UNIX/Linux (Epoll? ??), Windows (IOCP)?? ?? ?? |
??? | ?? (??, ?? ??) | High (?? ??, ?? ??) |
?? | ?? ???? ????? | ?? ?? I/O ??? ?? ????? ? ???? |
?? ??? | ? ??, ???, ??? ?? ???? | ? ??? ???, ??? ??? |
? ? : Linux??
epoll
?? Nio? ?? AIO?? ??? ??????. AIO? ??? I/O ??? ???? ?? ? ? ??? ???? ?? ? ????.
4. ???? ??? ?? ??
- ?? ?? : ?? ?? ??? ?? compact ()? ?? ?? ?? ()? ?????.
- ??? ?? :
Selector
??? ??? ????. ????? ??? ???? ???? ??????. - ?? ?? : ?? ??? ?? ??? ??? ??? ?? ?? ????.
- ?? : ?? ??? ?? - ???? ??? ???? ????.
- ??? ?? ??? ?? ?? : RAW NIO/AIO ?? Netty ?? Undertow? ??????.
?? ??
Java Nio ? ??? I/O? ?? ???? ???? ?? ????? ?? ? ??? ?? ?????. NIO? ???? ???? ? ??? I/O? ?? ??? ??? ????? AIO? OS ?? ?? ???? ??? ??? ? ?????.
???? ?????? NIO ?? (?? ??? ??? ??)? ???? ? ??????. AIO? ??? ???? ????? ?? ????? ?? ???? ????.
?? ???, ??? ??? ???? ??? ?? ? ? ? ?? ?? ??? ?? ? ????.
????? ??? ???? ?? ??? ??? ??? ??? ???? ?? ? ?????.
? ??? Java Nio ? ??? I/O? ?? ???? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

Java? ??? ?? ? ?? ?? ?? ???? ?? ??????. 1. ?? ??? ??? ??????. 2. ? ?? ?? ?? ??? ?? ?? ?? ???????. 3. ? ??? ??? ???? ??, ??? ? ??? ?? ? ? ????. 4. ??? ?? ??? ? ??, ?? ??? ????, name (), ordinal (), value () ? valueof ()? ?? ?? ???? ?????. 5. ??? ??? ?? ??, ??? ? ???? ???? ? ??? ?? ??, ?? ?? ?? ?? ??? ?? ????? ?????.

????? ?? ?? (ISP)? ?????? ???? ?? ?????? ???? ??????. ??? ?? ??? ?????? ?? ?? ?? ??? ?????? ???? ????. ? ??? ???? ??? ?????. ???? ?????? ???? ?? ?? ???? ?? ??? ???? ???? ??? ??? ?????? ??? ?????. ?? ???? ???? ??? ????? : ?? ??? ?? ?????? ??? ?????? ?? ?? ????? ?? ? ??? ?? ?? ????? ?? ?? ??? ?????. ?? ??, ??, ?? ? ?? ??? ?? ? ?? ?????? ???, ??? ? ??? ??????. ??? ???? ?? ?? ?????? ?? ??? ??? ? ??? ???? ?? ? ? ????.

Java? ??? ?? ??, ?? ? ??? (? : Projectreactor) ? Java19? ?? ???? ??? ??? ?????? ?????. 1. CompletableFuture? ?? ??? ?? ?? ??? ? ?? ??? ????? ?? ??????? ? ?? ??? ?????. 2. Projectreactor? ?? ? ??? ??? ???? ?? ???? ? ??? ???? ?? ? ?????? ?????. 3. ?? ???? ??? ??? ??? I/O ??? ? ??? ???? ?? ??? ????? ??? ???? ????. ? ???? ?? ??? ????? ??? ??? ??? ?? ??? ??? ?????? ???? ???? ?? ?? ??? ??????.

Java??? ?? ??? ????? ? ?? ?? ???? ????. ??, ?? ??? ??? ??? ?? ? ? ???, ?? ?? ?? ??? ?? ?? ?? ???? ??? ?????. Runnable? run () ????? ?? ?? ??? ??? ?? ?? ? ????? ??? ?????. ??, Callable? ?? ??? ?????? ?? ?? ? ??? ?? ? ????. ?? ????? ????? ??? ???????. ??, Runnable? ??? ?? ExecutorService? ?? ?? ? ? ??? Callable? ExecutorService?? ??? ? ??? ?? ??? ?? ? ? ????.

Java?? ??? ?? ?? ??? ???? ? ?????. ?? ???? ??? ?????. 1. ?? ?? ? ???? ??????? ?? ?? ?? ??? ???? ??? ?????. 2. ?? ??, ???, ??? ?? ?? ?? ???? ????? ?? ??? ??? ??? ?????. 3. ENUMMAP ? ENUMSET? ???? ?? ? ?? ???? ???? ??? ???? ? ?????? ?????. 4. ?? ?, ??? ?? ?? ??? ?? ????? ?? ??? ??? ?????.? ????? ?? ???? ????????. ??? ???? ???? ?? ??? ????? ??? ?? ? ??? ?? ?????? ???????.

Javanio? Java 1.4? ?? ? ??? IOAPI???. 1) ?? ? ??? ?????, 2) ??, ?? ? ??? ?? ?? ??, 3) ? ??? ??? ???? 4) ?? ??? ?? IO?? ? ????? ?????. 1) ? ?? IO? ??? ?? ??? ???, 2) ??? ??? ?? ???? ?????, 3) ???? ?????? ???? 4) ??? ?? ??? ?? ?? ? ??? ?????. 1) ??? ??/??? ??? ?? ?????, 2) ???? ???? ???? ?? ???? ???????. 3) ??? ??? ??? ???????.

JavaprovidesmultiplesynchronizationToolsforthreadsAfety.1.SynchronizedBlocksensUremutualExclusionByLockingMethodSorspecificCodesections.2.reentrantLockofferAdcerAdcenctrol, ratelockandFairnessPolicies.3.ConditionVariablesStowFor

Java? ????? ????? ??? ??? ?? ???? ?? ?? ??????, ?? ? ???? ? ??? ????. ?? ???? ??? ??? ???? ??? ??? ???? ?? ??? ??? ????. ???? ???? ??? ??, ?? ??? ???? ???? ?? ??? ?? ???? ?? ?????. ???? ?? ?? ??? ?? ?? ??? ?????. ?????? ?? ??? ??? ???? ?? ??? ??? ?? ??? ???? ???? ??? ?? ??? ?????? ???? ????? ??? ?? ?? ???, ?? ? ?? ???? ??? ??? ?????. ???? urlclassl? ?? ??? ??? ??? ?? ? ? ????
