问题:如果一个so里面定义了全局or静态变量,这个so被两个进程加载,那么so里面定义的全局or静态变量实际是在每个进程中都有一个副本,有什么办法能够让这两个副本指向同一个变量呢?
回答:不能,动态库在多个进程之间,只有代码段和只读内存区时共享的。但可以使用共享内存方式来共享变量。<其实也可以变相实现,so库有一个初始化函数,可以在这个函数里面开辟动态内存区用于共享变量。>
问题:如果一个so里面定义了全局or静态变量,这个so被两个进程加载,那么so里面定义的全局or静态变量实际是在每个进程中都有一个副本,有什么办法能够让这两个副本指向同一个变量呢?
回答:不能,动态库在多个进程之间,只有代码段和只读内存区时共享的。但可以使用共享内存方式来共享变量。<其实也可以变相实现,so库有一个初始化函数,可以在这个函数里面开辟动态内存区用于共享变量。>