访问同一个函数

类的多个对象共享的有:成员函数、被static修饰的成员变量

多个对象使用同一个成员函数,会串行。

多线程使用同一个成员函数,会并行。

代码与数据是两种东西,代码负责取出数据。函数本身是代码,代码在内存中唯一。其形参、局部变量在各自的线程栈中,内存独立。

函数中的全局变量、动态申请的空间、静态局部变量等在堆空间,堆内存共享唯一。因此这种函数在被多线程调用时要加锁。

 

【参考】

两个线程同时调用一个函数会出现什么情况? - 哈哈不是嘎嘎 - 博客园 (cnblogs.com)

为什么多线程进入同一个函数可以保证数据的完整性? - faithlocus - 博客园 (cnblogs.com)

两个线程同时调用同一个处理函数的互斥问题_mq_ydn3102的博客-CSDN博客_两个线程同时调用一个方法

从线程到多线程超详细讲解(内存图解)_GoSang的博客-CSDN博客

posted @ 2022-03-25 23:31  夕西行  阅读(59)  评论(0编辑  收藏  举报