zoukankan      html  css  js  c++  java
  • strongswan——线程处理函数

    1. 将函数压入当前线程的清理处理程序栈中。 每当线程被取消、退出或使用TRUE作为执行参数调用thread_cleanup_pop函数时都会调用回调函数cleanup。

    void thread_cleanup_push(thread_cleanup_t cleanup, void *arg);

    其中入参cleanup为函数指针,定义如下:

    typedef void (*thread_cleanup_t)(void *arg);

    2. 从当前线程的清理处理程序栈中删除栈顶函数,并可以选择执行它。

    void thread_cleanup_pop(bool execute);

    3. 将所有注册的清理处理程序弹出并执行,弹出顺序与注册顺序相反。此函数仅用于非常特殊的目的,其中调用者确切地知道已经推送了哪些清理处理程序。对于常规使用,调用者应该精确地知道通过使用thread_cleanup_push()压入的处理程序数量,并通过调用thread_cleanup_pop()将相同数量的处理程序弹出。

    void thread_cleanup_popall();

  • 相关阅读:
    [React]核心概念
    [算法]复杂度分析
    [算法]移除指定元素&strSr()的实现
    [算法]合并链表&删除数组重复项
    php _weakup()反序列化漏洞
    Java 注解详解
    MyBatis入门
    Spring 事务管理
    Spring AOP
    Spring JDBC
  • 原文地址:https://www.cnblogs.com/collapsar/p/10100059.html
Copyright © 2011-2022 走看看