2004 by Marc J. Rochkind. All rights reserved. Portions marked "Open Source" may be copied under license.

 

Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

c7/f1.c File Reference


Detailed Description

File locking (bad example) [Sec. 7.11.1].

Definition in file f1.c.

Go to the source code of this file.

Compounds

struct  rec

Defines

#define DBNAME   "termdb"

Functions

bool readrec (int dbfd, struct rec *r, off_t off)
bool writerec (int dbfd, struct rec *r, off_t off)
bool store (int dbfd, int data)
void process1 (void)
void process2 (void)
int main (void)


Define Documentation

#define DBNAME   "termdb"
 

Definition at line 90 of file f1.c.

Referenced by process1(), and process2().


Function Documentation

int main void   ) 
 

Definition at line 143 of file f1.c.

References EC_CLEANUP_BGN, EC_CLEANUP_END, ec_neg1, exit(), fork(), process1(), process2(), and waitpid().

void process1 void   )  [static]
 

Definition at line 92 of file f1.c.

References close(), DBNAME, EC_CLEANUP_BGN, EC_CLEANUP_END, ec_false, ec_neg1, exit(), open(), PERM_FILE, store(), and writerec().

Referenced by main().

void process2 void   )  [static]
 

Definition at line 110 of file f1.c.

References close(), DBNAME, EC_CLEANUP_BGN, EC_CLEANUP_END, EC_FAIL, ec_false, ec_neg1, errno, exit(), open(), rec::r_data, rec::r_next, and readrec().

Referenced by main().

bool readrec int  dbfd,
struct rec r,
off_t  off
 

Definition at line 28 of file f1.c.

References EC_CLEANUP_BGN, EC_CLEANUP_END, EC_FAIL, errno, and pread().

bool store int  dbfd,
int  data
 

Definition at line 62 of file f1.c.

References EC_CLEANUP_BGN, EC_CLEANUP_END, ec_false, ec_neg1, lseek(), rec::r_data, rec::r_next, readrec(), usleep(), and writerec().

bool writerec int  dbfd,
struct rec r,
off_t  off
 

Definition at line 45 of file f1.c.

References EC_CLEANUP_BGN, EC_CLEANUP_END, EC_FAIL, errno, and pwrite().


Generated on Fri Apr 23 10:57:09 2004 for AUP2 Example Source by doxygen 1.3.1