memory-mapped-files

    3熱度

    1回答

    我有它創建了一個存儲器映射文件如下代碼: using (Mutex mutex = new Mutex(false, CoordinatorMutexName)) { mutex.WaitOne(); var security = new MemoryMappedFileSecurity(); security.SetAccessRule( new

    1熱度

    1回答

    在帶有內存映射文件的多線程進程中,如果一個線程解引用尚未存在內存中的頁面,會發生什麼情況?操作系統是否會阻止整個進程或僅僅是那個線程?其他操作系統呢? (BSD,OSX,Windows)中 編輯:interesting report於2009年LKML

    1熱度

    1回答

    如何找出(windows)內存映射文件是否存在:在Win32中,確定資源是否已存在的教科書解決方案是:創建並檢查GetLastError()是否返回ERROR_ALREADY_EXISTS。 例如: HANDLE h = ::CreateFileMapping(INVALID_HANDLE_VALUE, 0, PAGE_READWRITE, 0, size, name); bool alread

    3熱度

    1回答

    我打算處理大型壓縮文件,並且我想將內存映射到文件以加速讀取。我採用了現有的常規文件輸入示例,但無法編譯或工作:-)我正在使用C++ Boost 1.49 任何建議歡迎! #include<iostream> #include<boost/iostreams/filtering_streambuf.hpp> #include<boost/iostreams/copy.hpp> #include

    0熱度

    1回答

    我有一個包含兩個AppDomain的應用程序。其中一個AppDomain動態加載執行一些計算並生成大量輸出數據(存儲在EntityFramework EntityObject中)的DLL。 到目前爲止,當它調用適當的方法時,我剛剛將這個EntityObject「返回」到另一個AppDomain。當然,實際上,這是序列化EntityObject及其所有數據。隨着此對象數據量的增長,此過程已成爲應用程

    0熱度

    2回答

    我有一個主要由javascript組成的網站。我在IIS上託管它。 本網站要求從硬盤上的特定文件夾中獲取圖像並將其顯示給最終用戶。 圖像的請求非常頻繁和快速。 有什麼辦法可以減少磁盤讀取操作的開銷嗎? 我聽說過內存映射,硬盤的一部分可以被映射,它將被用作主內存。 有人可以告訴我,如果我是錯的或正確的,如果我是正確的是什麼步驟來做到這一點。 如果我錯了,有沒有其他解決方案呢?

    5熱度

    1回答

    我對C#中內存映射文件的工作方式的理解是每次對數據的請求都會產生一個副本。例如,如果您有一個大型數據結構作爲文件保存,則使用內存映射文件會導致實際文件映射到RAM中的內存,以及從文件中讀取一個位於GC堆中的副本。 我假設這是因爲指針和GC在一般情況下不會相處得很好。 那麼,有沒有辦法解決這個問題? 也許通過一些混合模式的C++,可以通過內存映射數據公開託管API? 直接指針操作與不安全的C#呢?

    2熱度

    3回答

    據Msdn: 內存映射文件允許程序員非常大 文件的工作,因爲內存可以同時管理,和他們允許無需 齊全,隨機訪問文件尋求 問題: 內存Mappe整個文件的原則是讀/寫字節,並建立由位置和偏移的觀點。 這是什麼意思「不需要尋求」? I MUST必須知道開始和結束(偏移)以讀取文件。 所以追求DOES EXISTS! 我不要尋求在這個龐大的字節數組.... 我失去了什麼?

    0熱度

    1回答

    我嘗試在win CE 6.0上創建命名共享內存,但是可能該進程不保存數據。 我寫了兩個過程。第一次將文本寫入共享內存和第二次讀取。第二個顯示空消息窗口。 第一進程: #include "stdafx.h" #include <stdlib.h> #define BUFFSIZE 256 TCHAR szName[]=TEXT("MyFileMappingObject"); TCHAR s

    0熱度

    1回答

    雖然處理一個非常大的二進制文件可以使用C中的內存映射與fread相比有什麼不同?即使時間稍有不同,也可以。如果它確實讓流程更容易理解如何在大型二進制文件上使用內存映射並從中提取數據? 謝謝!