⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fd.h

📁 PostgreSQL 8.2中增加了很多企业用户所需要的功能和性能上的提高,其开发团队说,该版本将加速更多企业向该数据库移植.核心开发成员之一Bruce Momjian表示,在新版PostgreSQL
💻 H
字号:
/*------------------------------------------------------------------------- * * fd.h *	  Virtual file descriptor definitions. * * * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * * $PostgreSQL: pgsql/src/include/storage/fd.h,v 1.56 2006/03/05 15:58:59 momjian Exp $ * *------------------------------------------------------------------------- *//* * calls: * *	File {Close, Read, Write, Seek, Tell, Sync} *	{File Name Open, Allocate, Free} File * * These are NOT JUST RENAMINGS OF THE UNIX ROUTINES. * Use them for all file activity... * *	File fd; *	fd = FilePathOpenFile("foo", O_RDONLY, 0600); * *	AllocateFile(); *	FreeFile(); * * Use AllocateFile, not fopen, if you need a stdio file (FILE*); then * use FreeFile, not fclose, to close it.  AVOID using stdio for files * that you intend to hold open for any length of time, since there is * no way for them to share kernel file descriptors with other files. * * Likewise, use AllocateDir/FreeDir, not opendir/closedir, to allocate * open directories (DIR*). */#ifndef FD_H#define FD_H#include <dirent.h>/* * FileSeek uses the standard UNIX lseek(2) flags. */typedef char *FileName;typedef int File;/* GUC parameter */extern int	max_files_per_process;/* * prototypes for functions in fd.c *//* Operations on virtual Files --- equivalent to Unix kernel file ops */extern File FileNameOpenFile(FileName fileName, int fileFlags, int fileMode);extern File PathNameOpenFile(FileName fileName, int fileFlags, int fileMode);extern File OpenTemporaryFile(bool interXact);extern void FileClose(File file);extern void FileUnlink(File file);extern int	FileRead(File file, char *buffer, int amount);extern int	FileWrite(File file, char *buffer, int amount);extern int	FileSync(File file);extern long FileSeek(File file, long offset, int whence);extern int	FileTruncate(File file, long offset);/* Operations that allow use of regular stdio --- USE WITH CAUTION */extern FILE *AllocateFile(const char *name, const char *mode);extern int	FreeFile(FILE *file);/* Operations to allow use of the <dirent.h> library routines */extern DIR *AllocateDir(const char *dirname);extern struct dirent *ReadDir(DIR *dir, const char *dirname);extern int	FreeDir(DIR *dir);/* If you've really really gotta have a plain kernel FD, use this */extern int	BasicOpenFile(FileName fileName, int fileFlags, int fileMode);/* Miscellaneous support routines */extern void InitFileAccess(void);extern void set_max_safe_fds(void);extern void closeAllVfds(void);extern void AtEOXact_Files(void);extern void AtEOSubXact_Files(bool isCommit, SubTransactionId mySubid,				  SubTransactionId parentSubid);extern void RemovePgTempFiles(void);extern int	pg_fsync(int fd);extern int	pg_fsync_no_writethrough(int fd);extern int	pg_fsync_writethrough(int fd);extern int	pg_fdatasync(int fd);/* Filename components for OpenTemporaryFile */#define PG_TEMP_FILES_DIR "pgsql_tmp"#define PG_TEMP_FILE_PREFIX "pgsql_tmp"#endif   /* FD_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -