推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

C语言中的单例模式实现与线程安全.docx

资料介绍

C语言中的单例模式实现与线程安全

一、什么是单例模式

单例模式(Singleton Pattern)是一种设计模式,确保一个类只有一个实例,并提供全局访问点。在C语言中虽然没有类的概念,但可以通过全局变量和函数实现类似的效果。

typedef struct {
    int configValue;
    char configName[32];
} Config;

// 全局唯一的配置对象
Config *getConfigInstance() {
    static Config *instance = NULL;
    if (instance == NULL) {
        instance = (Config *)malloc(sizeof(Config));
        instance->configValue = 100;
        strcpy(instance->configName, "default");
    }
    return instance;
}

二、基础的单例实现(非线程安全)

最简单的单例实现使用静态局部变量的延迟初始化:

Config *getConfig() {
    static Config instance;   // 静态局部变量,只初始化一次
    static int initialized = 0;
    
    if (!initialized) {
        instance.configValue = 100;
        strcpy(instance.configName, "default");


部分文件列表

文件名 大小
C语言中的单例模式实现与线程安全.docx 38K

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载