局部栈变量不要传引用给可能切换线程的函数

来源:互联网 发布:网络黄金egd能提现吗 编辑:程序博客网 时间:2024/05/29 05:55


一般情况下,尽量不要把栈上的局部变量传地址给其他函数,特别是当其他函数需要切换线程的时候,如果其他线程对该变量调用析构函数,那么可能会core掉。因为设定局部变量的函数可能已经执行结束(异步切换线程时),如果该函数结束,那么局部变量会被析构,在其他线程中再访问这个局部变量势必会出错。如果非要用局部变量,那么必须保证定义局部变量的函数没有执行结束(即同步,线程一直在waiting)。
0 0