Frage

Gibt es eine Anwendung in .NET Bedarf in 64-Bit-gebaut werden alle Vorteile einer Maschine auf sie mit einem 64-Bit-OS zu nehmen, oder wird sie nutzen es nur als 32-Bit-Build nehmen. Grundsätzlich haben wir ein Problem mit einem der Speicher Ausnahme und es wurde vorgeschlagen, um die Konsole-Anwendung auf einem 64-Bit-Box laufen, die das Problem lösen „kann“. Die Frage ist, können wir spin up nur eine 64-Box und die aktuelle App auf sie werfen oder brauche ich die App in einer 64-Bit-Art und Weise neu zu erstellen.

War es hilfreich?

Lösung

Wenn Ihre App konfiguriert ist für die „Any CPU“ Plattform zu bauen, dann wird es in geeigneter Weise auf entweder ausgeführt werden.

So stellen Sie sicher, dass es keine 32/64 Bit spezielle Sachen nicht verwendet, oder Sie werden auf Probleme stoßen.

MSDN-Dokumentation hier .

Für einige Diskussion über die Nachteile finden Sie unter hier

Andere Tipps

Wenn es für jede Plattform (Standard) gebaut ist, wird es in 64 Bit auf 64-Bit-Betriebssystemen ausgeführt werden.

Davon abgesehen, gibt es immer noch mögliche Probleme zu beachten. Wenn Sie mit nativen Code-Schnittstelle (über p / aufrufe, C ++ / CLI oder COM), dann müssen Sie in dem Hafen, den Code zu 64 Bit. Wenn die Anwendung 100% geschaffen, es funktioniert einfach.

"Any CPU" ist dein Freund.

Als Nebenwirkung:

Wir hatten einen besonders großen Trie Struktur, die die 2 GB Speicherplatz von 32-Bit-Windows-überschritten. Da die meisten der Struktur von Objektreferenzen enthalten, fanden wir, dass die Speicheranforderungen der App fast verdoppelt, wenn auf 64bit bewegen, erfordern um 4gb. Dies ist, weil der Speicher eine Referenz speichern 64bits breit anstelle von 32 ist.

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