gtpc2mf6 | C/C++ Language Support User's Guide |
This function creates a locking cursor for the specified collection. An exclusive lock will be imposed on the specific collection for the life of the cursor. Only this particular cursor and a nonlocking cursor can update elements in the collection at the same time.
Format
#include <c$to2.h> long TO2_createReadWriteCursor (const TO2_PID_PTR pid_ptr, TO2_ENV_PTR env_ptr, TO2_PID_PTR cursorPidPtr);
Normal Return
The normal return is a positive value.
Error Return
An error return is indicated by a zero. When zero is returned, use the TO2_getErrorCode function to determine the specific error code. For more information, see Error Handling.
The following error codes are common for this function:
TO2_ERROR_ACCESS_MISMATCH
TO2_ERROR_DELETED_PID
TO2_ERROR_ENV
TO2_ERROR_METHOD
TO2_ERROR_PID
TO2_ERROR_UPDATE_NOT_ALLOWED
TO2_ERROR_ZERO_PID
Programming Considerations
Examples
The following example creates a locking cursor.
#include <c$to2.h> /* Needed for TO2 API Functions */ #include <stdio.h> /* APIs for standard I/O functions */ TO2_PID collect; /* PID of the collection object */ TO2_ENV_PTR env_ptr; /* Pointer to TO2 environment */ TO2_PID cursor; /* PID of the cursor object */ TO2_ERR_CODE err_code; /* TO2 error code value */
·
·
·
/*******************************************************************/ /* Place a locking cursor on the temporary collection. */ /*******************************************************************/ if (TO2_createReadWriteCursor(&collect, env_ptr, &cursor) == TO2_ERROR) { printf("TO2_createReadWriteCursor failed!\n"); process_error(env_ptr); return(0); } else printf("TO2_createReadWriteCursor successful!\n"); err_code = TO2_first(&cursor, env_ptr);
·
·
·
err_code = TO2_deleteCursor(&cursor, env_ptr);
Related Information