Hallo Edmund,
tritt während der Bearbeitung der Sub ein OnComm- (oder ein beliebiges
anderes) Ereignis auf, wird zunächst deine Sub abgearbeitet und dann
(irgendwann!!!) die OnComm-Ereignisprozedur bearbeitet.
Wenn ein Datum am Comm-Port eintrifft, wird das Ereignis angemeldet.
Irgendwann, wenn das Betriebsystem meint, es ist Zeit dazu, wird das
Ereignis an dein Programm weitergegeben und die OnComm-Prozedur
bearbeitet. (So ist das bei einem Nicht-Echtzeit-OS).
Wenn Du nicht bis zum Ende deiner Sub warten willst, solltest du in
dieser ein (oder mehrere) DoEvent's einbauen. Beim Erreichen eines
DoEvent wird die Kontrolle an das OS abgegeben und anstehende
Ereignisse können Bearbeitet werden. DoEvents sollte man vor allem in
zeitintensiven Schleifen einbauen. Sonst kann mann das OS lahmlegen.
Z.B. mit
Do While 1=0
Loop
Allerdings ist der Einsatz von DoEvent nicht zu übertreiben, sonst
kommt dein Programm nur sehr zögerlich voran.
TD