我需要锁定一个对象(集合),执行一些操作并调用一个使用 ThreadPool(在同一个锁 block 内)打开线程的函数。
我的问题是,在新线程中执行的操作是否仍然被认为是线程安全的?
请您参考如下方法:
没有。新线程的代码在它自己的上下文中运行,lock 语句(实际上只是调用 Monitor.Enter 的一种便捷方式)在每个线程的基础上运行。
我需要锁定一个对象(集合),执行一些操作并调用一个使用 ThreadPool(在同一个锁 block 内)打开线程的函数。
我的问题是,在新线程中执行的操作是否仍然被认为是线程安全的?
请您参考如下方法:
没有。新线程的代码在它自己的上下文中运行,lock 语句(实际上只是调用 Monitor.Enter 的一种便捷方式)在每个线程的基础上运行。