Junior — Middle
Objasnite princip neblokirajućeg čitanja podataka i njegove prednosti.
sobes.tech АИ
Одговор од АИ
Нeblokirajuće čitanje podataka je način dobijanja informacija iz izvora (npr. fajla, mreže ili buffera), pri čemu tok ne staje i ne čeka da podaci postanu dostupni. Umesto toga, operacija čitanja se odmah vraća, ili sa dostupnim podacima, ili sa informacijom da podaci još uvek nisu dostupni.
Prednosti:
- Povećanje performansi: tok može obavljati druge zadatke bez čekanja.
- Poboljšanje odziva aplikacija, posebno u UI i mrežnim servisima.
- Mogućnost skaliranja putem efikasnog korišćenja resursa.
Primer u Javi sa NIO:
ByteBuffer buffer = ByteBuffer.allocate(1024);
SocketChannel channel = SocketChannel.open();
channel.configureBlocking(false); // neblokirajući režim
int bytesRead = channel.read(buffer);
if (bytesRead == 0) {
// još nema podataka, mogu se obavljati drugi zadaci
} else if (bytesRead > 0) {
// podaci su pročitani i spremni za obradu
}