多线程加socket,linux多线程加解锁

 2023-09-23 阅读 17 评论 0

摘要:1、动态方式使用互斥量,该类型的互斥量在定义时不进行初始化,需要在使用之前初始化,使用结束销毁 1.1、定义一个锁变量: pthread_mutex_t g_mutex_Msg; 1.2、初始化锁变量: pthread_mutex_init (&g_mutex_Msg,NULL); 1.3、销毁锁


1、动态方式使用互斥量,该类型的互斥量在定义时不进行初始化,需要在使用之前初始化,使用结束销毁

    1.1、定义一个锁变量:
        pthread_mutex_t g_mutex_Msg;

    1.2、初始化锁变量:
        pthread_mutex_init (&g_mutex_Msg,NULL);

    1.3、销毁锁变量:
        pthread_mutex_destroy(&g_mutex_Msg);

    1.4、加解锁:
        pthread_mutex_lock (&g_mutex_Msg);
        //需要被锁保护的对象的使用;
        pthread_mutex_unlock(&g_mutex_Msg);


2、静态方式使用互斥量,该类型的互斥变量在定义时初始化,且无需释放。
    2.1、定义并初始化锁变量
        pthread_mutex_t hashlock = PTHREAD_MUTEX_INITIALIZER;
    2.2、使用锁    
        pthread_mutex_lock (&hashlock);
        //需要被锁保护的对象的使用;
        pthread_mutex_unlock(&hashlock); 
 
    2.3、不需要再进行销毁


另需:#include <pthread.h>

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/4/91940.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息