데이터 베이스 MySQL 튜토리얼 详细讲解MySQL数据库对文件操作的封装_MySQL

详细讲解MySQL数据库对文件操作的封装_MySQL

Jun 01, 2016 pm 01:56 PM
운영 체제

  在查看MySQL对文件的操作中,它在不同的操作系统上对文件的操作,除了使用标准C运行库函数,包括open、close、seek等,在Win32下的文件和目录操作函数使用了CreatFile、CloseHandl、SetFilePointer等,很多人可能不明白为什么对文件的操作要封装出两套函数。

  其实使用API和标准库函数都可以生成文本文件和二进制文件,在这点上没有区别。同read()对应的是ReadFile,同write()对应的是WriteFile,同seek()对应的是SetFilePointer,同close对应的是CloseHandle。这两套函数都可以使用。但是Win 32系统把文件的概念进行了扩展。无论是文件、通信设备、命名管道、邮件槽、磁盘、还是控制台,都是用API函数CreateFile来打开或创建的。该函数的声明为:

  HANDLE CreateFile(

  LPCTSTR lpFileName, // 文件名

  DWORD dwDesiredAccess, // 访问模式

  DWORD dwShareMode, // 共享模式

  LPSECURITY_ATTRIBUTES lpSecurityAttributes, // 通常为NULL

  DWORD dwCreationDistribution, // 创建方式

  DWORD dwFlagsAndAttributes, // 文件属性和标志

  HANDLE hTemplateFile // 临时文件的句柄,通常为NULL

  如果调用成功,那么该函数返回文件的句柄,如果调用失败,则函数返回:

  INVALID_HANDLE_VALUE

  在用ReadFile和WriteFile读写时,既可以同步执行,也可以异步执行。ReadFile和WriteFile函数是否为执行异步操作是由CreateFile函数决定的。如果在调用CreateFile创建句柄时指定了FILE_FLAG_OVERLAPPED标志,那么调用ReadFile和WriteFile对该句柄进行的读写操作就是异步的,如果未指定异步标志,则读写操作是同步的。在同步执行时,函数直到操作完成后才返回。这意味着在同步执行时线程会被阻塞,从而导致效率下降。在异步执行时,即使操作还未完成,调用的函数也会立即返回。费时的I/O操作在后台进行,这样线程就可以干别的事情。这样可以大大的提高效率。这一点是值得我们学习和借鉴的,对于我们在文件的操作方面也可以对win32系统进行封装来提高文件操作的效率。

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Bitmex Exchange의 최신 공식 웹 사이트 입구 Bitmex Exchange의 최신 공식 웹 사이트 입구 Mar 21, 2025 pm 06:03 PM

베테랑 cryptocurrency 파생 상품 거래 플랫폼으로서 공식 웹 사이트 입학의 정확성이 중요합니다. Phishing 웹 사이트로 인해 가짜 웹 사이트로의 오해 입력은 도난과 자금 손실로 이어질 수 있습니다. 이 기사는 사용자가 Bitmex 공식 웹 사이트에 안전하게 액세스하고 신뢰할 수있는 cryptocurrency 정보 플랫폼 (예 : CoinmarketCap, Coingecko), 공식 소셜 미디어, 기존 주소 검증 및 공식 지원 채널의 검증, 2 인용 검증, 정기적 인 암호 변경 및 보안 소프트웨어의 사용을 강조하여 사용자에게 영향을 미치고 보안을 피할 수 있도록 강조합니다.

OKX 거래 플랫폼을 다운로드하는 방법 OKX 거래 플랫폼을 다운로드하는 방법 Mar 26, 2025 pm 05:18 PM

OKX 트레이딩 플랫폼은 모바일 장치 (Android 및 iOS) 및 컴퓨터 (Windows 및 MacOS)를 통해 다운로드 할 수 있습니다. 1. Android 사용자는 공식 웹 사이트 또는 Google Play에서 다운로드 할 수 있으며 보안 설정에주의를 기울여야합니다. 2. iOS 사용자는 앱 스토어를 통해 다운로드하거나 공식 발표를 따라 다른 방법을 얻을 수 있습니다. 3. 컴퓨터 사용자는 공식 웹 사이트에서 해당 시스템의 클라이언트를 다운로드 할 수 있습니다. 설치 후 다운로드 할 때 항상 공식 채널을 사용하고 등록, 로그인 및 보안 설정을 사용해야합니다.

게이트 교환 다운로드 다운로드 게이트 공식 앱을 다운로드하는 방법 게이트 교환 다운로드 다운로드 게이트 공식 앱을 다운로드하는 방법 Mar 20, 2025 pm 05:57 PM

Gate.io Open Exchange 앱 다운로드 안내서 :이 기사는 언제 어디서나 암호 화폐를 거래하는 데 도움이되는 공식 Gate.io Exchange 앱 다운로드 방법을 설명합니다. Gate.io App은 편의성, 우수한 사용자 경험, 포괄적 인 기능 (스팟, 계약, 레버리지, 재무 관리 등) 및 강력한 보안의 장점을 가지고 있으며 실시간 시장 정보를 제공합니다. 안전을 보장하려면 Gate.io의 공식 웹 사이트에서 앱을 다운로드하여 맬웨어 다운로드를 피하십시오. 이 기사는 공식 웹 사이트 다운로드 단계와 iOS 및 Android 설치 절차를 자세히 소개하고 Gate.io 앱을 신속하게 시작하고 안전하고 편리한 Cryptocurrency 거래 여정을 시작하는 데 도움이되는 자주 묻는 질문 및 보안 제안을 제공합니다.

데비안에서 Zookeeper Performance Tuning을 운영하는 방법 데비안에서 Zookeeper Performance Tuning을 운영하는 방법 Apr 02, 2025 am 07:42 AM

이 기사에서는 데비안 시스템에서 Zookeeper 성능을 최적화하는 방법에 대해 설명합니다. 우리는 하드웨어, 운영 체제, Zookeeper 구성 및 모니터링에 대한 조언을 제공 할 것입니다. 1. 시스템 수준에서 스토리지 미디어 업그레이드 최적화 : 기존의 기계식 하드 드라이브를 SSD 솔리드 스테이트 드라이브로 교체하면 I/O 성능이 크게 향상되고 액세스 대기 시간이 줄어 듭니다. 스왑 파티셔닝 비활성화 : 커널 매개 변수를 조정하여 스왑 파티션에 대한 의존성을 줄이고 자주 메모리 및 디스크 스왑으로 인한 성능 손실을 피하십시오. 파일 디스크립터 상한도 : Zookeeper의 처리 효율에 영향을 미치는 리소스 한계를 피하기 위해 시스템별로 동시에 파일 설명 자의 수를 늘리십시오. 2. Zookeeper 구성 최적화 zoo.cfg 파일 구성

Linux 시스템에서 Python 통역사를 삭제할 수 있습니까? Linux 시스템에서 Python 통역사를 삭제할 수 있습니까? Apr 02, 2025 am 07:00 AM

Linux 시스템과 함께 제공되는 Python 통역사를 제거하는 문제와 관련하여 많은 Linux 배포판이 설치 될 때 Python 통역사를 사전 설치하고 패키지 관리자를 사용하지 않습니다 ...

Binance Binance 앱 공식 웹 사이트 다운로드 포털 Binance Binance 앱 공식 웹 사이트 다운로드 포털 Mar 18, 2025 pm 02:09 PM

Binance는 세계 최고의 암호 화폐 거래 플랫폼으로 350 개 이상의 암호 화폐와 1,700 개 이상의 거래 쌍을 지원하고 Spot, Futures 및 Leverage와 같은 다양한 거래 모드를 제공합니다. 사용자는 공식 웹 사이트를 통해 앱을 다운로드하고 iOS 또는 Android를 선택하여 설치할 수 있습니다. 2017 년에 설립 된 Binance는 전 세계 대형 거래소로 발전했지만 2023 년에 43 억 달러의 자금 세탁 비용에 직면 해 있습니다. 그 장점은 강력한 기술 강점, 풍부한 제품 서비스, 거대한 사용자 기반 및 Safu Insurance Fund를 포함한 엄격한 보안 조치에 있습니다. Binance는 또한 Binance Smart Chain, Research Institute, Academy 및 Binance Card와 같은 비즈니스를 다각화했습니다.

Gate Exchange Gate 공식 앱을 다운로드하는 방법을 다운로드하십시오 Gate Exchange Gate 공식 앱을 다운로드하는 방법을 다운로드하십시오 Mar 20, 2025 pm 05:54 PM

이 기사에서는 언제 어디서나 암호 화폐를 거래하는 데 도움이되는 공식 Gate.io (Sesame Open Door) Exchange 앱을 다운로드하는 방법을 소개합니다. Gate.io 앱의 장점은 편의성, 원활한 사용자 경험, 포괄적 인 거래 기능 (STON, 계약, 레버리지, 재무 관리 등) 및 강력한 보안이며 실시간 시장 정보를 제공합니다. 이 기사는 Android 및 iOS 시스템의 설치 방법을 포함하여 공식 웹 사이트를 통해 앱을 다운로드하는 단계에 대해 자세히 설명하고 공식 채널에서 맬웨어를 피하기 위해 다운로드하는 것의 중요성을 강조합니다. 또한이 기사는 자주 묻는 질문 및 보안 제안을 제공하여 사용자가 다운로드 및 설치를 원활하게 작성하고 계정 보안을 보장 할 수 있도록 도와줍니다. cryptocurrency 투자 여행을 시작하려면 gate.io를 선택하십시오!

Xbit DeCentralized Exchange 앱 다운로드 권장 사항 Xbit DeCentralized Exchange 앱 다운로드 권장 사항 Mar 31, 2025 pm 08:21 PM

이 기사는 공식 웹 사이트 (https://www.xbit.com/)를 포함하여 XBIT Exchange 모바일 앱의 다운로드 및 설치 단계를 자세히 소개합니다 (https://www.xbit.com/) 자체 시스템 버전에 따라 설치 패키지를 선택하십시오. 궁금한 점이 있으면 XBIT Exchange Online 고객 서비스에 문의하십시오.

See all articles