AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

NamedPipes - Status des Buffers

Ein Thema von Neutral General · begonnen am 30. Jan 2015 · letzter Beitrag vom 30. Jan 2015
 
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

NamedPipes - Status des Buffers

  Alt 30. Jan 2015, 16:29
Hallo,

Ich habe hier 2 Programme (A und B) die via NamedPipes miteinander kommunizieren.
Angenommen die Buffergröße beträg 120 Bytes. Nun schreibt A 100 Bytes in die Pipe, die B auslesen könnte. Bevor B aber die Daten liest, möchte A weitere 100 Bytes senden.

Problem: In diesem Fall würde WriteFile blockieren solange B seine Daten nicht ausliest, da der Buffer für die Schreiboperation nicht ausreicht und WriteFile solange blockiert bis genug Speicher frei ist (B also in dem Fall mindestens 80 Bytes gelesen hat).

Ich möchte nun also bevor ich mit A Daten sende wissen wie viel Platz B noch in seinem Buffer hat und falls nicht genug Platz vorhanden ist erst gar nicht WriteFile aufrufen.

Gibt es da etwas?
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz