Man page - globus_handle_table(3)
Packages contas this manual
- globus_callback_space_init(3)
- globus_error_construct_errno_error(3)
- globus_error_errno_get_errno(3)
- globus_fifo.h(3)
- globus_thread_equal(3)
- globus_args.h(3)
- globus_callback_register_oneshot(3)
- globus_module_descriptor_s(3)
- globus_rmutex_destroy(3)
- globus_thread_kill(3)
- globus_error_set_long_desc(3)
- globus_module_getenv(3)
- globus_hashtable_keyeq_func_t(3)
- globus_cond_broadcast(3)
- globus_module_print_activated_versions(3)
- globus_module_print_version(3)
- globus_uuid_fields(3)
- globus_rmutex_t(3)
- globus_error_get_cause(3)
- globus_time_abstime_is_infinity(3)
- globus_error_get_source(3)
- globus_error_mutliple_add_chain(3)
- globus_hashtable_int_hash(3)
- globus_handle_t(3)
- globus_thread_yield(3)
- globus_priority_q_empty(3)
- globus_config.h(3)
- globus_error_get_type(3)
- globus_thread_key_t(3)
- globus_errno_error_utility(3)
- globus_list_relation_t(3)
- globus_rmutex_lock(3)
- globus_libc_join(3)
- globus_callback_space_behavior_t(3)
- globus_fifo_copy(3)
- globus_priority_q_dequeue(3)
- globus_callback_api(3)
- globus_fifo_peek(3)
- globus_callback_space_register_periodic(3)
- globus_fifo_destroy(3)
- globus_url(3)
- globus_list_free(3)
- globus_hashtable_string_hash(3)
- globus_module.h(3)
- globus_error_get_short_desc(3)
- globus_hashtable_voidp_keyeq(3)
- globus_callback_space_attr_set_behavior(3)
- globus_module_get_version(3)
- globus_fifo_init(3)
- globus_error_get_long_desc(3)
- globus_version_print(3)
- globus_hashtable_next(3)
- globus_cond_init(3)
- globus_time.h(3)
- globus_url_destroy(3)
- globus_debug.h(3)
- globus_list_empty(3)
- globus_hashtable_voidp_hash(3)
- globus_list_sort(3)
- globus_callback_space_t(3)
- globus_cond_timedwait(3)
- globus_generic_error_api(3)
- globus_hashtable_last(3)
- globus_hashtable_empty(3)
- globus_condattr_init(3)
- globus_types.h(3)
- globus_module_setenv(3)
- globus_mutexattr_t(3)
- globus_mutex_trylock(3)
- globus_fifo_tail_peek(3)
- globus_callback_space_get_depth(3)
- globus_list_search(3)
- globus_priority_q_destroy(3)
- globus_handle_table_increment_reference(3)
- globus_callback_error_type_t(3)
- globus_error_generic.h(3)
- globus_fifo_t(3)
- globus_object_cache.h(3)
- globus_error_initialize_error(3)
- globus_callback_unregister_signal_handler(3)
- globus_strptime.h(3)
- globus_callback_space_is_single(3)
- globus_priority_q_t(3)
- globus_error_set_short_desc(3)
- globus_hashtable(3)
- globus_size_t(3)
- globus_list(3)
- globus_thread_t(3)
- globus_callback_space_poll(3)
- globus_error_wrap_errno_error(3)
- globus_hashtable_insert(3)
- globus_list_rest(3)
- globus_callback_get_timeout(3)
- globus_signal_poll(3)
- globus_extension_lookup(3)
- globus_module_activate_proxy(3)
- globus_priority_q_size(3)
- globus_callback_was_restarted(3)
- globus_bool_t(3)
- globus_memory(3)
- globus_callback_func_t(3)
- globus_error_set_source(3)
- globus_error_errno_set_errno(3)
- globus_callback_space_reference(3)
- globus_url_scheme_t(3)
- globus_common_include.h(3)
- globus_mutex_init(3)
- globus_thread_cancel(3)
- globus_fifo_move(3)
- globus_callback(3)
- globus_hashtable_int_keyeq(3)
- globus_thread_preemptive_threads(3)
- globus_thread_pool.h(3)
- globus_error_construct_error(3)
- globus_logging_update_pid(3)
- globus_condattr_setspace(3)
- globus_callback_space_attr_t(3)
- globus_rmutexattr_t(3)
- globus_thread_key_delete(3)
- globus_priority_q.h(3)
- globus_priority_q_cmp_func_t(3)
- globus_module_activate_array(3)
- globus_hashtable_update(3)
- globus_priority_q(3)
- globus_libc_contact_string_to_ints(3)
- globus_libc.h(3)
- globus_priority_q_modify(3)
- globus_memory_destroy(3)
- globus_range_list.h(3)
- globus_cond_destroy(3)
- globus_byte_t(3)
- globus_options.h(3)
- globus_fifo_remove(3)
- globus_memory_push_node(3)
- globus_states.h(3)
- globus_tilde_expand(3)
- globus_hashtable_prev(3)
- globus_condattr_t(3)
- globus_callback_space_attr_init(3)
- globus_hashtable.h(3)
- globus_handle_table_insert(3)
- globus_socklen_t(3)
- globus_thread_once(3)
- globus_errno_error_object(3)
- globus_thread_self(3)
- globus_list_replace_first(3)
- globus_thread_set_model(3)
- globus_error_initialize_errno_error(3)
- globus_mutex(3)
- globus_list_search_pred(3)
- globus_eval_path(3)
- globus_handle_table(3)
- globus_fifo_dequeue(3)
- globus_thread(3)
- globus_thread_rmutex.h(3)
- globus_list_cons(3)
- globus_callback_register_periodic(3)
- globus_result_t(3)
- globus_callback_space_register_signal_handler(3)
- globus_thread_testcancel(3)
- globus_release.h(3)
- globus_callback_unregister(3)
- globus_fifo_empty(3)
- globus_mutex_destroy(3)
- globus_generic_error_utility(3)
- globus_hashtable_iterators(3)
- globus_fifo_destroy_all(3)
- globus_priority_q_first(3)
- globus_reltime_cmp(3)
- globus_mutex_unlock(3)
- globus_rmutex_unlock(3)
- globus_hashtable_size(3)
- globus_hashtable_first(3)
- globus_callback_poll(3)
- globus_callback_signal(3)
- globus_condattr_destroy(3)
- globus_error_set_cause(3)
- globus_thread_cancellable_func(3)
- globus_hashtable_copy_func_t(3)
- globus_memory.h(3)
- globus_time_has_expired(3)
- globus_hashtable_destructor_func_t(3)
- globus_handle_table_t(3)
- globus_error_errno_match(3)
- globus_url_parse(3)
- globus_common(3)
- globus_hashtable_string_keyeq(3)
- globus_list_first(3)
- globus_error_multiple_remove_chain(3)
- globus_time_reltime_is_infinity(3)
- globus_module_deactivate(3)
- globus_handle_table.h(3)
- globus_handle_table_lookup(3)
- globus_callback_has_time_expired(3)
- globus_tilde_expand.h(3)
- globus_symboltable.h(3)
- globus_cond_signal(3)
- globus_handle_table_init(3)
- globus_hashtable_remove(3)
- globus_list_remove(3)
- globus_callback_spaces(3)
- globus_list.h(3)
- globus_thread_sigmask(3)
- globus_uuid_create(3)
- globus_hashtable_destroy(3)
- globus_memory_init(3)
- globus_fifo(3)
- globus_callback_adjust_oneshot(3)
- globus_thread.h(3)
- globus_uuid.h(3)
- globus_abstime_cmp(3)
- globus_print.h(3)
- globus_mutex_t(3)
- globus_module_get_module_pointer(3)
- globus_extension_activate(3)
- globus_mutex_lock(3)
- globus_poll_blocking(3)
- globus_callback_space_attr_destroy(3)
- globus_handle_destructor_t(3)
- globus_hashtable_to_list(3)
- globus_callback_register_signal_handler(3)
- globus_thread_setspecific(3)
- globus_thread_key(3)
- globus_threadattr_t(3)
- globus_thread_getspecific(3)
- globus_url_copy(3)
- globus_errno_error_accessor(3)
- globus_uuid_import(3)
- globus_error_v_construct_error(3)
- globus_uuid(3)
- globus_hashtable_lookup(3)
- globus_error_api(3)
- globus_fifo_convert_to_list(3)
- globus_priority_q_first_priority(3)
- globus_error_set_type(3)
- globus_list_t(3)
- globus_extension.h(3)
- globus_cond_wait(3)
- globus_hashtable_init(3)
- globus_callback_space_destroy(3)
- globus_hashtable_hash_func_t(3)
- globus_thread_key_destructor_func_t(3)
- globus_error_string.h(3)
- globus_callback_handle_t(3)
- globus_callback_space_attr_get_behavior(3)
- globus_list_copy(3)
- globus_memory_pop_node(3)
- globus_error_print_friendly(3)
- globus_module_deactivate_proxy_cb_t(3)
- globus_list_insert(3)
- globus_priority_q_init(3)
- globus_error_construct_multiple(3)
- globus_logging.h(3)
- globus_handle_table_increment_reference_by(3)
- globus_callback_signal_poll(3)
- globus_handle_table_decrement_reference(3)
- globus_error_print_chain(3)
- globus_list_pred_t(3)
- globus_priority_q_enqueue(3)
- globus_callback_space_get(3)
- globus_errno_error_api(3)
- globus_rmutex_init(3)
- globus_module(3)
- globus_condattr_getspace(3)
- globus_url_parse_rfc1738(3)
- globus_error_match(3)
- globus_callback_add_wakeup_handler(3)
- globus_poll(3)
- globus_priority_q_remove(3)
- globus_error_print_friendly_t(3)
- globus_thread_pool(3)
- globus_module_activate(3)
- globus_url_parse_loose(3)
- globus_extension_register_builtin(3)
- globus_thread_key_create(3)
- globus_mutexattr_init(3)
- globus_thread_create(3)
- globus_i_am_only_thread(3)
- globus_thread_setcancelstate(3)
- globus_handle_table_destroy(3)
- globus_fifo_size(3)
- globus_list_size(3)
- globus_error.h(3)
- globus_thread_common.h(3)
- globus_callback_adjust_period(3)
- globus_url.h(3)
- globus_cond_t(3)
- globus_list_min(3)
- globus_url_get_scheme(3)
- globus_callback.h(3)
- globus_error_errno_search(3)
- globus_common.h(3)
- globus_error_construct_string(3)
- globus_mutexattr_destroy(3)
- globus_error_errno.h(3)
- globus_thread_once_t(3)
- globus_poll_nonblocking(3)
- globus_generic_error_object(3)
- globus_fifo_enqueue(3)
- globus_priority_q_s(3)
- globus_callback_space_register_oneshot(3)
- globus_cond(3)
- globus_generic_error_accessor(3)
- globus_url_t(3)
- globus_thread_exit(3)
apt-get install libglobus-common-doc
Manual
| globus_handle_table(3) | Library Functions Manual | globus_handle_table(3) |
NAME
globus_handle_table - Handle Table for Reference Counting Data
- Handle Table for Reference Counting Data.
SYNOPSIS
Macros
#define GLOBUS_NULL_HANDLE
Typedefs
typedef struct globus_l_handle_table_s *
globus_handle_table_t
Handle table abstract type. typedef int globus_handle_t
Handle abstract type. typedef void(* globus_handle_destructor_t) (void
*datum)
Handle datum destructor.
Functions
int globus_handle_table_init (globus_handle_table_t
*handle_table, globus_handle_destructor_t destructor)
int globus_handle_table_destroy (globus_handle_table_t
*handle_table)
Destroy a handle table. globus_handle_t
globus_handle_table_insert (globus_handle_table_t
*handle_table, void *value, int initial_refs)
globus_bool_t globus_handle_table_increment_reference_by
(globus_handle_table_t *handle_table, globus_handle_t handle,
unsigned int inc)
Increment the reference count for handle. globus_bool_t
globus_handle_table_decrement_reference (globus_handle_table_t
*handle_table, globus_handle_t handle)
Remove a reference to a handle. globus_bool_t
globus_handle_table_increment_reference (globus_handle_table_t
*handle_table, globus_handle_t handle)
Add a reference to a handle table entry. void *
globus_handle_table_lookup (globus_handle_table_t
*handle_table, globus_handle_t handle)
Resolve a handle its datum.
Detailed Description
Handle Table for Reference Counting Data.
The globus_handle_table_t abstraction provides a reference-counting handle table to automatically free data when there are no more references to it. Each datum in the globus_handle_table_t container has a count associated with it which may be incremented and decremented in single steps or by an increment. While a handle has any references to it, the globus_handle_table_lookup() will return the datum associated with the handle, otherwise it will return NULL. The value of a globus_handle_t is not reused until INT_MAX data have been inserted into the handle table.
Macro Definition Documentation
#define GLOBUS_NULL_HANDLE
Invalid handle value
Typedef Documentation
typedef void(* globus_handle_destructor_t) (void *datum)
Handle datum destructor.
Parameters
Function Documentation
globus_bool_t globus_handle_table_decrement_reference (globus_handle_table_t * handle_table, globus_handle_t handle)
Remove a reference to a handle. Remove a reference to a handle table entry, calling its destructor if no more references exist for the handle.
Parameters
handle
The handle to a datum to decrement the reference count for.
Returns
int globus_handle_table_destroy (globus_handle_table_t * handle_table)
Destroy a handle table. Destroy a handle table and call the destructor for all objects associated with it.
Parameters
globus_bool_t globus_handle_table_increment_reference (globus_handle_table_t * handle_table, globus_handle_t handle)
Add a reference to a handle table entry.
Parameters
handle
The handle to a datum to increment the reference count for.
Returns
globus_bool_t globus_handle_table_increment_reference_by (globus_handle_table_t * handle_table, globus_handle_t handle, unsigned int inc)
Increment the reference count for handle.
Parameters
handle
The handle to a datum to increment the reference count for.
inc The number of references to add the handle.
Returns
int globus_handle_table_init (globus_handle_table_t * handle_table, globus_handle_destructor_t destructor)
Initialize a table of unique reference counted handles.
Parameters
destructor Function to call to free the data associated with a handle when the handle's reference count reaches 0 or the handle table is destroyed.
globus_handle_t globus_handle_table_insert (globus_handle_table_t * handle_table, void * value, int initial_refs)
Insert a datum into a handle table
Insert a value into the handle table, and return a unique handle to it.
Parameters
value The value to insert into the table
initial_refs The initial reference count of this value in the table
Returns
void * globus_handle_table_lookup (globus_handle_table_t * handle_table, globus_handle_t handle)
Resolve a handle its datum.
Parameters
handle
The handle to a datum to resolve
Returns
Author
Generated automatically by Doxygen for globus_common from the source code.
| Version 18.14 | globus_common |