| |
VB.NET - Ein- und UmsteigerTCP IP Send/Receive herangehensweise | | | Autor: Stefan1510 | Datum: 30.06.07 12:33 |
| Hallo an alle ich will eine Client Serveranwendung schreiben, dazu habe ich mir folgendes ueberlegt und will eigentlich nur Kommentare zu dieser herangehensweise zurate ziehen.
Ich werde einen Client in VB.net einen Client schreien, dann eine 2Thread auf machen, denn einen (primaer Thread) zum senden, den 2. zum emfangen..
Muessteso funktionieren und ich werde auch nicht um den 2. Thread kommen, oder ?
Stefn | |
Re: TCP IP Send/Receive herangehensweise | | | Autor: Melkor | Datum: 30.06.07 13:56 |
| Du brauchst keine Threads, welche alles wesentlich komplizierter machen. Du kannst die asynchronen Methoden wie Begin/EndWrite(), Begin/EndRead() verwenden.
Those people who think they know everything are a great annoyance to those of us who do - Isaac Asimov | |
Re: TCP IP Send/Receive herangehensweise | | | Autor: Stefan1510 | Datum: 30.06.07 14:02 |
| Hallo Melkor, diese Funktionen sind da sicher nicht blockend, wenn ich jetzt mal an receive denke... Werde mir das mal anschauen.
Danke
Stefan | |
Re: TCP IP Send/Receive herangehensweise | | | Autor: Melkor | Datum: 30.06.07 15:08 |
| Blockend sind sie schon, aber das "geblockte" läuft in einem anderen Thread, nur musst du nicht um diese Threads darum kümmern.
Those people who think they know everything are a great annoyance to those of us who do - Isaac Asimov | |
Re: TCP IP Send/Receive herangehensweise | | | Autor: Stefan1510 | Datum: 02.07.07 08:00 |
| Hallo Melkor, es gibt noch Sachen, die noch nicht richtig klar sind.
Ich schreibe die Daten jetzt ueber ein BinaryWriter in den Networkframe, dass klappt auch, aber wenn ich jetzt einen neuen Wert schicken will, kommt ne Exeption.
Was mich zum einen Wundert, dass ich mit dem Code gar nicht mehr sagen kann, uebertrage die Daten mit BeginWrite, EndWrite...
Kannst Du mir da bissel weiterhelfen...
Danke Stefan
set_pos = 100
set_speed = txt_setspeed.Text
' set to begin
my_writer.Seek(0, SeekOrigin.Begin)
'write in the stream
my_writer.Write(set_pos)
my_writer.Write(set_speed) Was glaube ich die einfachste Loesung waere die 2Daten in einen Buffer zu schreiben, aber wie kann ich das am besten machen. memcpy gibt es leider nicht. | |
Re: TCP IP Send/Receive herangehensweise | | | Autor: Melkor | Datum: 02.07.07 10:04 |
| Mit BinaryWriter kannst du nicht direkt asynchron arbeiten. Du kannst asynchrone Delegates verwenden oder deine ursprüngliche Idee mit Threads. Und NetworkStream unterstützt Seek() nicht. Die Daten werden zum fernen Rechner geschickt, wie willst du das zurücksetzen?
Those people who think they know everything are a great annoyance to those of us who do - Isaac Asimov | |
Re: TCP IP Send/Receive herangehensweise | | | Autor: Stefan1510 | Datum: 02.07.07 10:10 |
| Hallo Melkor, wieder erstmal Danke fuer die Antwort, ich werde jetzt die Sache mit den Threads versuchen. Mal sehen wie weit ich da komme. Aber was mir noch immer Bauxhschmerzenbereitet, wie bekomme ich alle meine Werte in meinen sendBuffer, da muss es doch sowas wie memcpy geben. Oder einfach mit Write/Read reinschreiben ?
Nochmals, vielen Dank fuer die tolle Unterstuetzung
Stefan | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats sevZIP40 Pro DLL
Zippen und Unzippen wie die Profis!
Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|