vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
TCP 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
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

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