Autor Beitrag
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 29.04.15 10:27 
Hast du daran gedacht den Prozess explizit auf 64Bit zu setzen? Visual Studio preferiert 32bit wenn du debuggst und das Projekt als Plattform Any CPU benutzt.
m.keller Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 133

Win xp, Win 7
C# (VS 2008)
BeitragVerfasst: Mi 29.04.15 11:22 
vorerst mache ich es erst ein mal auf 32 bit.
Somit kann ich die 2 GB eh nicht umgehen.

Die api die ich einbinde gibt es nur als 32 bit, somit bin ich gezwungen alles auf 32 bit zu halten bis ich eine neue Version bekomme.

_________________
Der gesunde Menschenverstand ist nur eine Anhäufung von Vorurteilen, die man bis zum 18. Lebensjahr erworben hat. (Albert Einstein)
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Mi 29.04.15 13:58 
Nun ja dann bist du (im Standardfall) schon an die max 2GB für den gesamten Prozess gebunden und in dem Memorybereich mußt du dann auch noch einen entsprechend großen zusammenhängenden Speicher finden um ein so großes Array anfordern zu können. Da solltest du schon sehr viele viel kleinere Arrays verwenden um nicht in Fragmentierungsprobleme zu laufen um überhaupt diese 2GB annähernd ausnutzen zu können.

Wenn du den Speicher wirklich optimal ausnutzen willst und einen großen Speicherbereich häufiger neu erzeugen willst solltest du über das Verhalten des Large Object Heap Bescheid wissen udn über die Implikationen draus ob man ein größes bzw. kleines Object anfordert.
m.keller Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 133

Win xp, Win 7
C# (VS 2008)
BeitragVerfasst: Di 02.05.17 18:31 
Um das Thema mal zu beenden ;)

Ich habe die Software aufgeteilt.

Der Teil mit der 32 bit Api hält die Daten nicht mehr vor, sondern sendet diese als Pakete über eine WCF-Schnittelle.

Auf der anderen Seite werden die Daten in der eigentlichen Software gesammelt und mit einem weiteren Thread verarbeitet.

Danke euch.

_________________
Der gesunde Menschenverstand ist nur eine Anhäufung von Vorurteilen, die man bis zum 18. Lebensjahr erworben hat. (Albert Einstein)