2010-04-06 4 views
4

Je me réfère spécifiquement à InputStream (Java SE) et à ses implémentations.Comment les opérations d'E/S bloquent-elles?

Comment le blocage est-il effectué? Je suis un peu inquiet qu'ils utilisent un mécanisme «occupé-attente», car cela produirait beaucoup de frais généraux. Je crois qu'ils le font d'une autre manière, mais je demande juste d'être certain.

Répondre

5

Non, ils n'utilisent pas d'attente en attente. Cela dépend de l'implémentation (qui dépendra du type de flux d'entrée que vous utilisez), mais il est généralement possible d'utiliser une API de niveau système bloquante, donc l'efficacité dépendra du système d'exploitation.

+0

Je parle des flux de socket en particulier. Pourriez-vous donner plus d'informations? – someguy

+0

@someguy: Plus d'informations sur quoi en particulier? À un moment donné, il faut que ça touche le système d'exploitation, n'est-ce pas? Alors, comment les appels système de blocage pour les sockets fonctionnent-ils au niveau du système d'exploitation pour votre système d'exploitation préféré? –

Questions connexes