Aloa,
Sinds een paar dagen ben ik bezig met een applicatie in C#, dat gebruik maakt van Udp. Het was de bedoeling dat mijn applicatie een datagram zou versturen, en de response zou opvangen, zodat ik er vervolgens verder wat onzinnigs mee zou kunnen doen.
Het sturen van de datagram ging perfect, ook het ontvangen van de response van de server werkte, tenminste, dat dacht ik.
Na een ander datagram te versturen, waar ik als response meerdere packets zou moeten krijgen, ging het mis: ik kreeg alleen het eerste packet binnen.
Een oplossing zou kunnen zijn: 'vang' X aantal packets op, maar dat zal alleen werken wanneer je weet hoeveel packets je moet terugkrijgen, en niet wanneer je een dynamisch aantal packets krijgt.
En nu dat laatste dus toch bij mij het geval is, ben ik eigelijk wel benieuwd hoe andere mensen een workaround voor dit probleem/deze bug hebben gevonden.
Zelf heb ik nu gekozen voor Threads die wachten op de response. Vervolgens kill ik de thread na X ms, en geef een foutmelding.
Een echt nette oplossing vind ik het niet, maar goed
Sinds een paar dagen ben ik bezig met een applicatie in C#, dat gebruik maakt van Udp. Het was de bedoeling dat mijn applicatie een datagram zou versturen, en de response zou opvangen, zodat ik er vervolgens verder wat onzinnigs mee zou kunnen doen.
Het sturen van de datagram ging perfect, ook het ontvangen van de response van de server werkte, tenminste, dat dacht ik.
Na een ander datagram te versturen, waar ik als response meerdere packets zou moeten krijgen, ging het mis: ik kreeg alleen het eerste packet binnen.
Een oplossing zou kunnen zijn: 'vang' X aantal packets op, maar dat zal alleen werken wanneer je weet hoeveel packets je moet terugkrijgen, en niet wanneer je een dynamisch aantal packets krijgt.
En nu dat laatste dus toch bij mij het geval is, ben ik eigelijk wel benieuwd hoe andere mensen een workaround voor dit probleem/deze bug hebben gevonden.
Zelf heb ik nu gekozen voor Threads die wachten op de response. Vervolgens kill ik de thread na X ms, en geef een foutmelding.
Een echt nette oplossing vind ik het niet, maar goed