hallo,
folgendes timer task problem.
ich hab drei klassen
client --- connector -- producer
ich möchte über den client über den connector aufträge an den producer schicken.
die aufträge werden vom client in einem regelmässigen intervall gesendet. das mit hilfe eines timertasks der dementsprechend geschudelt wird.
ein auftrag muss aber verzögert geschickt werden. das geschieht durch einen timertask im connector der das weitersenden verzögert.
nun hat der producer den auftrag und sendet eine antwort an den client - der connector soll aber wiederum verzögern, diesmal in richtung client. die verzögerung des connectors soll also einen delay durch den netzwerkverkehr simulieren.
funktioniert soweit. ABER.
funktioniert nur wenn die intervalwerte des clients mit den verzögerungswerten des connectors abgestimmt werden. also die verzögerung durch den connector MUSS kleiner sein als der intervalwert des clients in dem die aufträge regelmässig verschickt werden.
sonst werden z.b. aufträge vertrauscht (z.b. von 5 aufträgen wird auf auftrag 1 und 2 gar nicht geantwortet und auf auftrag 5 gleich 3 mal.) oder die zeitwerte der aufträge (was bei den aufträgen wichtig ist) stimmen nicht.
wer eine idee?
lg.
folgendes timer task problem.
ich hab drei klassen
client --- connector -- producer
ich möchte über den client über den connector aufträge an den producer schicken.
die aufträge werden vom client in einem regelmässigen intervall gesendet. das mit hilfe eines timertasks der dementsprechend geschudelt wird.
ein auftrag muss aber verzögert geschickt werden. das geschieht durch einen timertask im connector der das weitersenden verzögert.
nun hat der producer den auftrag und sendet eine antwort an den client - der connector soll aber wiederum verzögern, diesmal in richtung client. die verzögerung des connectors soll also einen delay durch den netzwerkverkehr simulieren.
funktioniert soweit. ABER.
funktioniert nur wenn die intervalwerte des clients mit den verzögerungswerten des connectors abgestimmt werden. also die verzögerung durch den connector MUSS kleiner sein als der intervalwert des clients in dem die aufträge regelmässig verschickt werden.
sonst werden z.b. aufträge vertrauscht (z.b. von 5 aufträgen wird auf auftrag 1 und 2 gar nicht geantwortet und auf auftrag 5 gleich 3 mal.) oder die zeitwerte der aufträge (was bei den aufträgen wichtig ist) stimmen nicht.
wer eine idee?
lg.