C # Async problème de prise
-
19-09-2019 - |
Question
Je vais avoir un problème bizarre avec mon code, au moment tout fonctionne très bien, sauf la partie envoi. Chaque fois que je tente d'envoyer un paquet envoie effectivement de nombreux paquets vides, et je ne peux pas savoir pourquoi, je l'ai vérifié avec le débogueur et la fonction sendPacket est appelée une seule fois. Merci à tous!
La solution
Ce que je vois: vous passez un tableau (loginOutBuffer
) à Socket.BeginSend()
dans SendPacket
via OnPacketRecv
, mais vous l'effacer immédiatement après dans OnPacketRecv
Socket.BeginSend()
ne fait pas de copie du tableau lorsque vous passez dans, il envoie les données dans le tableau maintenant dégagé, entraînant des zéros en sortant l'autre extrémité.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow