最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言實(shí)現(xiàn)大數(shù)據(jù)文件的內(nèi)存映射機(jī)制

 更新時(shí)間:2017年01月03日 10:50:31   投稿:lqh  
這篇文章主要介紹了C語言實(shí)現(xiàn)大數(shù)據(jù)文件的內(nèi)存映射機(jī)制的相關(guān)資料,需要的朋友可以參考下

C語言實(shí)現(xiàn)大數(shù)據(jù)文件的內(nèi)存映射機(jī)制

摘要

本文主要講述大量數(shù)據(jù)的文件的內(nèi)存映射機(jī)制的實(shí)現(xiàn)。

1. 內(nèi)存映射

內(nèi)存映射文件,是由一個文件到一塊內(nèi)存的映射。Win32提供了允許應(yīng)用程序把文件映射到一個進(jìn)程的函數(shù) (CreateFileMapping)。內(nèi)存映射文件與虛擬內(nèi)存有些類似,通過內(nèi)存映射文件可以保留一個地址空間的區(qū)域,同時(shí)將物理存儲器提交給此區(qū)域,內(nèi)存文件映射的物理存儲器來自一個已經(jīng)存在于磁盤上的文件,而且在對該文件進(jìn)行操作之前必須首先對文件進(jìn)行映射。使用內(nèi)存映射文件處理存儲于磁盤上的文件時(shí),將不必再對文件執(zhí)行I/O操作,使得內(nèi)存映射文件在處理大數(shù)據(jù)量的文件時(shí)能起到相當(dāng)重要的作用。

2. 實(shí)現(xiàn)

#include "stdafx.h" 
#include "windows.h" 
#include <iostream> 
#include <fstream> 
 
using namespace std; 
  
 
int main(int argc, _TCHAR* argv[]){ 
 
  //// Open the file that we want to map. 
  HANDLE hFile = ::CreateFile(L"C:/Users/Joe WANG/Desktop/Data.txt", 
   GENERIC_READ | GENERIC_WRITE, 
   0, 
   NULL, 
   OPEN_ALWAYS, 
   FILE_ATTRIBUTE_NORMAL, 
   NULL); 
 
  // Create a file-mapping object for the file. 
  HANDLE hFileMapping = ::CreateFileMapping(hFile, 
   NULL, 
   PAGE_WRITECOPY, 
   0, 0, 
   NULL); 
 
  // Now map the file 
  PCHAR pbFile = (PCHAR)::MapViewOfFile(hFileMapping, FILE_MAP_COPY, 0, 0, 0); 
  
  // Print result 
  printf("%s\n", ((string)pbFile).c_str());  
 
  // Close all file handle 
  ::UnmapViewOfFile(pbFile); 
  ::CloseHandle(hFileMapping); 
  ::CloseHandle(hFile); 
  
  return 0; 
} 

相關(guān)文章

  • C++實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)框架SimpleNN的詳細(xì)過程

    C++實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)框架SimpleNN的詳細(xì)過程

    本來自己想到用C++實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)主要是想強(qiáng)化一下編碼能力并入門深度學(xué)習(xí),對C++實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)框架SimpleNN的詳細(xì)過程感興趣的朋友一起看看吧
    2021-08-08
  • C/C++讀取大文件數(shù)據(jù)方式詳細(xì)講解

    C/C++讀取大文件數(shù)據(jù)方式詳細(xì)講解

    這篇文章主要介紹了C語言/C++讀取大文件數(shù)據(jù)的完整方式過程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-09-09
  • C++使用HTTP庫和框架輕松發(fā)送HTTP請求

    C++使用HTTP庫和框架輕松發(fā)送HTTP請求

    使用C++編程發(fā)送HTTP請求通常需要使用第三方的HTTP庫或框架,本文主要介紹了C++使用HTTP庫和框架輕松發(fā)送HTTP請求,感興趣的可以了解一下
    2023-12-12
  • 減少OpenCV讀取高分辨率圖像的時(shí)間示例

    減少OpenCV讀取高分辨率圖像的時(shí)間示例

    今天小編就為大家分享一篇減少OpenCV讀取高分辨率圖像的時(shí)間示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • OpenCV 顏色追蹤的示例代碼

    OpenCV 顏色追蹤的示例代碼

    這篇文章主要介紹了OpenCV 顏色追蹤的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • 詳解C++中shared_ptr的使用教程

    詳解C++中shared_ptr的使用教程

    shared_ptr能夠記錄對象被引用的次數(shù),主要被用來管理動態(tài)創(chuàng)建的對象的銷毀,這里我們就來詳解C++中shared_ptr的使用教程,需要的朋友可以參考下
    2016-05-05
  • C++項(xiàng)目求Fibonacci數(shù)列的參考解答

    C++項(xiàng)目求Fibonacci數(shù)列的參考解答

    今天小編就為大家分享一篇關(guān)于C++項(xiàng)目求Fibonacci數(shù)列的參考解答,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • C++圖文并茂講解繼承

    C++圖文并茂講解繼承

    繼承是C++面向?qū)ο缶幊讨械囊婚T。繼承是子類繼承父類的特征和行為,或者是繼承父類得方法,使的子類具有父類得的特性和行為。重寫是子類對父類的允許訪問的方法實(shí)行的過程進(jìn)行重新編寫,返回值和形參都不能改變。就是對原本的父類進(jìn)行重新編寫,但是外部接口不能被重寫
    2022-05-05
  • C語言格式化輸入輸出函數(shù)詳解

    C語言格式化輸入輸出函數(shù)詳解

    本文給大家分享的是c語言中2個格式化輸入輸出的函數(shù)printf()和scanf()的使用方法的說明及其組合方式的表單,非常詳細(xì),推薦給大家,希望對大家能夠有所幫助。
    2015-03-03
  • 詳解C/C++如何獲取路徑下所有文件及其子目錄的文件名

    詳解C/C++如何獲取路徑下所有文件及其子目錄的文件名

    這篇文章主要為大家詳細(xì)介紹了在C/C++中如何獲取路徑下所有文件及其子目錄的文件名,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-03-03

最新評論

宿迁市| 当涂县| 长汀县| 资中县| 阳朔县| 玛曲县| 上思县| 将乐县| 宝鸡市| 临高县| 沭阳县| 英德市| 长汀县| 江安县| 牡丹江市| 普兰县| 昌邑市| 林芝县| 静海县| 忻城县| 正蓝旗| 吉安市| 栾城县| 鄂托克前旗| 曲麻莱县| 虹口区| 明溪县| 肥城市| 潞西市| 沙湾县| 银川市| 弥勒县| 永清县| 仙游县| 民权县| 上栗县| 娄底市| 元阳县| 惠东县| 镇康县| 宾川县|