函数
GLibatomic_rc_box_release_full
自:2.58
声明 [src]
void
g_atomic_rc_box_release_full (
gpointer mem_block,
GDestroyNotify clear_func
)
描述 [src]
以原子方式释放 mem_block 指向的数据上的引用。
如果该引用是最后一个引用,它将调用 clear_func 来清除 mem_block 的内容,然后释放为 mem_block 分配的资源。
请注意,通过 clear_func 实现弱引用并不是线程安全的:从回调函数中清除内存的指针可能与试图将它作为 mem_block 访问的另一个线程竞争,因为当调用回调函数时 mem_block 已具有 0 的引用计数,并将被释放。
自 2.58 起可用
参数
mem_block-
类型:
gpointer一个指向引用计数数据的数据指针。
被调用的函数取得对数据的拥有权,并负责将其释放。 clear_func-
类型:
GDestroyNotify一个在清除数据时要调用的函数。