Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net System.DirectoryServices.AccountManagement.GroupPrincipal线程安全吗?_.net_Thread Safety_Directoryservices_Account Management_Groupprincipal - Fatal编程技术网

.net System.DirectoryServices.AccountManagement.GroupPrincipal线程安全吗?

.net System.DirectoryServices.AccountManagement.GroupPrincipal线程安全吗?,.net,thread-safety,directoryservices,account-management,groupprincipal,.net,Thread Safety,Directoryservices,Account Management,Groupprincipal,我正在编写一个程序,它将批量创建用户,我有一个操作,它是创建的一部分,会阻塞大约5秒钟,为了解决这个问题,我将使它线程化,并将所有内容都放在线程池中 我的问题是,如果我在线程外创建原则,并将组原则传递给线程,然后调用group.Members.Add(u)和group.Save()我会遇到麻烦吗?从每个线程内部生成新的组主体是否更好?从: 此类型的任何公共静态(在Visual Basic中共享)成员都是线程安全的。任何实例成员都不能保证线程安全 这个小注释在文档中非常常见。由程序员决定“线程安全

我正在编写一个程序,它将批量创建用户,我有一个操作,它是创建的一部分,会阻塞大约5秒钟,为了解决这个问题,我将使它线程化,并将所有内容都放在线程池中

我的问题是,如果我在线程外创建原则,并将组原则传递给线程,然后调用
group.Members.Add(u)
group.Save()
我会遇到麻烦吗?从每个线程内部生成新的组主体是否更好?

从:

此类型的任何公共静态(在Visual Basic中共享)成员都是线程安全的。任何实例成员都不能保证线程安全


这个小注释在文档中非常常见。由程序员决定“线程安全”是什么意思以及如何控制并发访问。

任何时候两个线程在同一个集合实例上运行时,您都是不安全的。如果您只是使用一个后台线程,这样UI就不会阻塞,那么在后台线程中创建组并在那里独占使用它。如果您的计划是通过同时生成多个线程来访问Active Directory来加快向组中添加用户的速度,我猜这不会有帮助