2011-03-10 1 views
5

I vraiment voulez mettre plus dans le corps pour expliquer la question ... mais le titre couvre vraiment tout cela. Autant que je peux en parler, librt est plus "officiel" (c'est une partie standard de libc?), Mais je me souviens aussi de voir que Node.js utilise libeio. Lequel dois-je passer plus de temps à regarder? Qu'en est-il de la portabilité? Quelle est la différence entre leurs API?Quelles sont les différences entre librt et libeio pour les E/S asynchrones, et pourquoi choisirais-je l'une par rapport à l'autre?

(je vous en serais reconnaissant si quelqu'un avec représentant ≥1,500 pourrait ajouter les balises « libeio » et « librt » à cette question, que je ne peux pas.)

Répondre

3

libeio appels standard dans enveloppements fils, et gère un grande partie des appels du système commun. Librt a seulement quelques appels - lire et écrire, mais pas, par exemple, stat.

+0

Hm. Dans de nombreux cas, cependant, il semble (à partir de la documentation) que 'librt' soit supporté par le matériel, au lieu d'être simplement mis en place avec une application judicieuse de' pthread's. Cela ne signifie-t-il pas que 'librt' a beaucoup plus de potentiel pour être performant? – ELLIOTTCABLE

+0

En théorie, oui. Mais il est probablement difficile de faire beaucoup mieux qu'une bonne implémentation à base de threads. –

Questions connexes