Left Up Nebenläufige Entwurfsmuster

Proactor

Witz

Asynchrone Operationen kosten weniger als die Threadkoordinierung.
(Im Prinzip macht die Koordinierung der Betriebssystemkern, der seinerseits die nebenläufigen Geräte verwaltet.)

Proactor hängt zusammen mit Async_IO.

Bei Asynchroner IO:

  1. Fileoffset muß bei der Operation angegeben werden, da weil die Operationen in beliebiger Reihenfolge ausgeführt werden dürfen, kein Kontext möglich ist. (GNU info)
  2. Neue Blöcke werden einfach angehängt und beim Callback wird angegeben, wo der Block geschrieben wurde. (Wunsch bei Logfile) Problem dabei: Wird ein Block nicht vollständig geschrieben, kann er nicht vervollständigt werden....
Hypothese:

Die Abstraktion 2) wird durch ACE_Asych_Write_Stream hergestellt
Allerdings: Bei ACE_Asynch_Read_File::read und ACE_Asynch_Write_File::write : offset muß angegeben werden

Implementierung in POSIX_Async_IO
Informatik- und Netzwerkverein Ravensburg e.V Rudolf Weber