Frage

Ist es möglich, eine von Speicher zugeordnete Datei für die Interprozess -Kommunikation mit der Garantie zu erstellen, dass der Inhalt immer im RAM aufbewahrt und nicht zur Datei gespült wird?

Ich arbeite derzeit an einer maßgeschneiderten OLAP -App. Die Kernidee besteht darin, einen Prozess wie eine Speicherbank zu haben, die alle Daten enthält, und mehrere Arbeitsprozesse, die tatsächlich die Berechnung durchführen. Normalerweise funktioniert in der Regel sehr reibungslos, von Zeit zu Zeit gibt es eine Performance -Schluckauf, wenn ein Arbeiter versucht, eine Ansicht eines Teils einer Datei zu erstellen, die seit einiger Zeit nicht mehr verwendet wurde - daher meine Frage.

Die Menge an RAM ist kein Problem (Windows/64 -Bit) - Wir wissen einfach nicht, ob es möglich ist, das System daran zu hindern, eine Spieldatei zu verwenden.

War es hilfreich?

Lösung

Sie suchen wahrscheinlich nach dem VirtualLock Funktion.

Sperrt den angegebenen Bereich des virtuellen Adressraums des Prozesses in den physischen Speicher und stellt sicher, dass der nachfolgende Zugriff auf die Region keinen Seitenfehler entspricht.

Vorbehalt.

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