Fight With Me!!!

导航

一个函数能否被两个线程同时调用

其实你可以这样想,函数本身只是代码,代码是只读的,无论多少个线程同时调都无所谓(因为只读嘛)。但是函数里面总要用到数据,如果数据属于线程(比如函数参数、局部变量,存在栈上,每个线程都有自己的栈),那么同时调还是没关系,因为用的本线程的数据;但是如果用了一些全局数据,比如全局变量,同时操作一个数据结构(如对一个链表有什么操作),那就不行了,这时候锁就出来了。

转自:http://bbs.chinaunix.net/thread-1527864-1-1.html

posted on 2018-01-09 10:03  nickTimer  阅读(5112)  评论(0编辑  收藏  举报