快速掌握 Mysql数据库对文件操作的封装[MySQL防范]
本文“快速掌握 Mysql数据库对文件操作的封装[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在查看Mysql对文件的操作中,它在差别的操作系统上对文件的操作,除了利用尺度C运行库函数,包含open、close、seek等,在Win32下的文件和目录操作函数利用了CreatFile、CloseHandl、SetFilePointer等,很多人大概不懂得为什么对文件的操作要封装出两套函数.
其实利用API和尺度库函数都可以生成文本文件和二进制文件,在这点上没有辨别.同read()对应的是ReadFile,同write()对应的是WriteFile,同seek()对应的是SetFilePointer,同close对应的是CloseHandle.这两套函数都可以利用.但是Win 32系统把文件的概念举行了扩大.无论是文件、通信设备、命名管道、邮件槽、磁盘、还是掌握台,都是用API函数CreateFile来翻开或成立的.该函数的声明为:
|
假如调用成功,那么该函数返回文件的句柄,假如调用失利,则函数返回:
|
在用ReadFile和WriteFile读写时,既可以同步履行,也可以异步履行.ReadFile和WriteFile函数能否为履行异步操作是由CreateFile函数决意的.假如在调用CreateFile成立句柄时指定了FILE_FLAG_OVERLAPPED标志,那么调用ReadFile和WriteFile对该句柄举行的读写操作就是异步的,假如未指定异步标志,则读写操作是同步的.在同步履行时,函数直到操作完成后才返回.这意味着在同步履行时线程会被阻塞,从而招致效率下降.在异步履行时,即便操作还未完成,调用的函数也会当即返回.费时的I/O操作在后台举行,这样线程便可以干别的事情.这样可以大大的提高效率.这一点是值得我们学习和鉴戒的,关于我们在文件的操作方面也可以对win32系统举行封装来提高文件操作的效率.
以上是“快速掌握 Mysql数据库对文件操作的封装[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:本文地址: | 与您的QQ/BBS好友分享! |