απαιτήσεις: Δύο προγράμματα στον υπολογιστή χρειάζονται μονόδρομη επικοινωνία και δεν θέλουν να χρησιμοποιούν μεθόδους Socket και Http για επικοινωνία, το Socket πρέπει να ακούει θύρες και σε περίπτωση διενέξεων θυρών, πρέπει να επιλυθούν και, στη συνέχεια, πρέπει να εξετάσουν τον μηχανισμό επανασύνδεσης κ.λπ., η μέθοδος Http είναι πολύ αναποτελεσματική και συχνά δημιουργεί και καταστρέφει συνδέσμους TCP. Στη συνέχεια, η ανώνυμη διοχέτευση AnonymousPipe απαιτεί μια διαδικασία γονέα-παιδιού και δεν τη λαμβάνει υπόψη.
Χρησιμοποιήστε επώνυμους αγωγούς για επικοινωνία διεργασιών μεταξύ δικτύων:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Οι επώνυμες διοχετεύσεις παρέχουν επικοινωνία μεταξύ διεργασιών μεταξύ του διακομιστή διοχέτευσης και ενός ή περισσότερων υπολογιστών-πελατών διοχέτευσης. Προσφέρουν περισσότερη λειτουργικότητα από τους ανώνυμους αγωγούς, οι οποίοι χρησιμοποιούνται για την παροχή επικοινωνίας μεταξύ διεργασιών στον τοπικό υπολογιστή. Οι επώνυμες διοχετεύσεις υποστηρίζουν επικοινωνία πλήρους αμφίδρομης επικοινωνίας μεταξύ δικτύων και πολλαπλών παρουσιών διακομιστή, επικοινωνία βάσει μηνυμάτων και εξομοίωση υπολογιστή-πελάτη, έτσι ώστε οι διαδικασίες σύνδεσης να μπορούν να χρησιμοποιούν τα δικά τους σύνολα δικαιωμάτων σε απομακρυσμένους διακομιστές.
Ας ρίξουμε μια ματιά πρώτα στις αποδόσεις:
Χρησιμοποιήστε το PowerShell για να προβάλετε την επώνυμη διοχέτευση που είναι ανοιχτή (Είναι επίσης δυνατή η προβολή του χρησιμοποιώντας ένα πρόγραμμα περιήγησης), η εντολή είναι η εξής:
.NET 6 ως διοχέτευση εντολών NamedPipeServerStream server, ο κώδικας έχει ως εξής:
Το πρόγραμμα .NET Framework αποστέλλει δεδομένα ως πρόγραμμα-πελάτη NamedPipeClientStream, με τον ακόλουθο κώδικα:
Λήψη πηγαίου κώδικα:
Τουρίστες, αν θέλετε να δείτε το κρυφό περιεχόμενο αυτής της ανάρτησης, παρακαλώ Απάντηση
|