Maison  >  Article  >  Java  >  Qu'est-ce que NIO en Java

Qu'est-ce que NIO en Java

(*-*)浩
(*-*)浩original
2019-11-27 15:57:163305parcourir

Qu'est-ce que NIO en Java

Java fournit un deuxième système d'E/S appelé NIO (New I/O NIO fournit des E/S différentes du traitement des E/S standard. méthode. Il s'agit du remplacement par Java de l'API d'E/S traditionnelle (depuis Java 1.4). (Apprentissage recommandé : Cours Java )

Il prend en charge la méthode de fonctionnement des E/S du coussin, la méthode de fonctionnement des E/S basée sur le canal. Avec l'introduction du JDK 7, le système NIO a été étendu pour fournir une prise en charge améliorée des fonctions du système de fichiers et de la gestion des fichiers. En raison de ces nouvelles fonctionnalités prises en charge par la classe de fichiers NIO, NIO est largement utilisé dans le traitement de fichiers.

NIO permet des E/S à haut débit pour les programmeurs Java sans utiliser de code natif personnalisé. NIO déplace l'activité d'E/S temporelle de remplissage, de vidange des tampons, etc. vers le système d'exploitation, accélérant considérablement les opérations.

Les composants de base de Java NIO sont les suivants :

Quest-ce que NIO en Java

Canaux et tampons : dans l'API d'E/S standard, en utilisant flux de caractères et flux d’octets. Dans NIO, des canaux et des tampons sont utilisés. Les données sont toujours écrites sur le canal à partir du tampon et lues du canal vers le tampon.

Sélecteurs : Java NIO fournit le concept de "sélecteurs". Il s'agit d'un objet qui peut être utilisé pour surveiller plusieurs canaux, tels que les données arrivant, les connexions ouvertes, etc. Par conséquent, un seul thread peut surveiller les données de plusieurs canaux.

E/S non bloquantes (E/S non bloquantes) : Java NIO fournit une fonctionnalité d'E/S non bloquante. Cette application renvoie immédiatement toutes les données disponibles. L'application doit disposer d'un mécanisme de pooling pour savoir si davantage de données sont prêtes.

Jetons un coup d'œil aux interfaces d'application et de système d'exploitation des E/S non bloquantes :

Quest-ce que NIO en Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn