Frage

Ich mache einige Wartungsarbeiten auf Software und haben ein Problem, das ich nicht verstehe.

Die Anwendung wurde unter Verwendung von Microsoft Visual C ++ entwickelt 6 und läuft unter Windows XP. Es besteht aus 21-Anwendungen, die über UDP-Sockets miteinander kommunizieren. Es ist eine Simulation eines eingebetteten Avioniksystem verwendet, um das System in einer PC-Umgebung zu debuggen. Jede der Anwendungen simuliert einen Knoten in dem eingebetteten System und das eingebettete vernetzte simuliert über UDP. Das System lief ursprünglich auf mehreren PCs, kann aber jetzt läuft auf einer einzigen Quad-Core-Maschine.

Das System funktioniert, aber die Kommunikation ist nervend langsam. Jedoch Internet Explorer öffnen und eine Website oder zwei Satz etwas zu besuchen, die meine Anwendungen plötzlich verursachen würde sehr schnell kommunizieren miteinander.

Also meine Frage ist, was hat gesetzt Internet Explorer, wenn Sie eine Website besuchen, so dass meine Bewerbung auch sie einstellen kann? Keiner der ursprünglichen Autoren des Systems ist immer noch um, und ich habe sehr wenig Fenster Programmiererfahrung.

War es hilfreich?

Lösung

ist es vielleicht nicht ein Windows-Problem, nachdem alle

sein
  1. Ihre API überprüfen, überprüfen Sie die Puffer und überprüfen Sie die Störmeldungen ‚GetLastError ()‘, die nicht INVALID verursacht (-1) und stoppt das Programm versuchen, es zu verwenden, auch wenn Ihr Programm läuft perfectit nützliche Warnungen haben könnte

  2. überprüfen ACK oder Angriffsgeschwindigkeit, es ist ein häufiges Problem bei Übertragung große Datenmengen über Netzwerkverbindungen (<- 90% ist es Ihr Problem), hier ist ein nützliches Thema zu diesem Thema (support.microsoft.com/ kb / 823764)

  3. Wenn keine dieser Lösungen funktioniert, versuchen Sie Ihre Treiber-Version gegen die manfucturer Website zu überprüfen.

  4. letzter Ausweg ist diese nützlichen Ideen: . Mit diesem Programm www.lvllord.de max Halb / offene Verbindungen 8-50 erhöhen . Ein Server Edition Windows verwenden, können einige Internet-basierte Programme steigern . mit Multi-Threading mit Sockets API kann etwas verwirrend an die API verursachen, wenn Sie mehr als 2-Buchsen an verschiedenen Threads in Multithread-Anwendung verwenden, versuchen die Leistung optimieren durch asynchrones Sockets oder so etwas wie die mit (msdn.microsoft.com/en- us / library / ms738551 (VS.85) .aspx)

  

Also meine Frage ist, was hat gesetzt Internet Explorer, wenn Sie eine Website besuchen, so dass meine Bewerbung auch sie einstellen kann? Keiner der ursprünglichen Autoren des Systems ist immer noch um, und ich habe sehr wenig Fenster Programmiererfahrung.

kann ACK es sein, überprüfen Sie auf dem Wiki .. bedeutet, es auf andere Weise die Angriffsgeschwindigkeit .. wenn nicht, dann wird es die Fenstergröße
erhalten werden Beide Einstellungen sind unsichtbar für Benutzer .. aber über Programme wie TuneUp Utilities oder alle allgemeinen Netzwerk versteckte Einstellung Regulatoren eingestellt werden
es könnte nur den Trick tun ..

Andere Tipps

Wenn das Protokoll über UDP implementiert Zuverlässigkeit des Geschwindigkeitsverlust wird zu massivem UDP Paketverlust auf localhost fällig. UDP Leistung auf localhost ist schrecklich, die beste Wahl ist, um den Socket-API in einer TCP-Schicht umhüllen.

Wenn es UDP Broadcast- oder Multicast ist Ihnen bei der Umsetzung eines Broker-Prozess aussehen müssen, um die Nachrichten über TCP multiplexen.

könnte einfacher sein, an bestehenden Messaging-APIs zu suchen, die auch auf der Inter Ebene arbeiten wie ZeroMQ .

Versuchen Sie Wireshark zu sehen, was Internet Explorer tut.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top