Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <unistd.h>
- #include <stdlib.h>
- #include "lmdb.h"
- int main () {
- MDB_env *env;
- MDB_txn *txn;
- int rc;
- rc= fork ();
- if (rc==0) {
- // first child
- rc= mdb_env_create (&env);
- rc= mdb_env_open (env, ".", 0, 0644);
- printf ("1: about to lock\n");
- rc= mdb_txn_begin (env, NULL, 9, &txn);
- printf ("1: locked!\n");
- sleep (3);
- printf ("1: exiting\n");
- exit(0);
- } else if (rc>0) {
- sleep(1);
- rc= fork ();
- if (rc==0) {
- // second child
- rc= mdb_env_create (&env);
- rc= mdb_env_open (env, ".", 0, 0644);
- printf ("2: about to lock\n");
- rc= mdb_txn_begin (env, NULL, 9, &txn);
- printf ("2: locked!\n");
- sleep (3);
- mdb_env_close (env);
- printf ("2: out\n");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement