关于在WEB开发中使用static?
多用户同时调用静态函数,会产生多个进程,本身是不会冲突的。
但静态函数访问了同一静态变量时就要使用lock语句。如果仅仅使用static方法而没有static变量的话是不会有问题的,一般线程安全的问题都是针对变量访问时发生冲突所造成的。class abc{ static object lockTest=new Object(); static function void Test(){ lock(lockTest) { //你的代码。} } } 这样,即使在Test()中被多个线程同时调用,但是扫行(你的代码)是,由于lock语句的存在,仍然会是单线程运行。后来的线程,会被lock(lockTest)这一句给阻赛到上一个线程把(你的代码)执行完。Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有