草庐IT

安全网络

全部标签

c# - 字典的线程安全

如果我有一个DictionarymyDic=newDictionary//Populatedictionary一个线程做myDic[0]=newStreamReader(path);另一个线程做myDic[1]=newStreamReader(otherpath)这个线程安全吗,因为字典中被修改的实际项目与另一个线程上的项目不同,或者我会得到一个InvalidOperationException:Collectionwasmodified 最佳答案 如果您在修改时枚举字典,您只会得到InvalidOperationException

c# - C# 中的空合并运算符 (??) 是线程安全的吗?

以下代码中是否存在可能导致NullReferenceException的竞争条件?--或--Callback变量是否可以在null合并运算符检查null值之后但在调用函数之前设置为null?classMyClass{publicActionCallback{get;set;}publicvoidDoCallback(){(Callback??newAction(()=>{}))();}}编辑这是出于好奇而提出的问题。我通常不会这样编码。我不担心Callback变量变得陈旧。我担心DoCallback会抛出Exception。编辑#2这是我的类(class):classMyClass{A

c# - 从网络下载之前获取图像文件的大小

我在我的控制台应用程序中使用以下代码从Web下载图像文件。WebClientclient=newWebClient();client.DownloadFile(stringaddress_of_image_file,stringfilename);代码运行得非常好。我想知道是否有办法在下载之前获取此图像文件的大小。PS-实际上我已经编写了一个爬虫程序,它可以在网站上四处移动以下载图像文件。所以我事先不知道它的大小。我所拥有的只是从网页源中提取的文件的完整路径。 最佳答案 这是一个您可以尝试的简单示例如果您有不同扩展名的文件,例如.G

c# - 在网络表单中查找控件

我有一个Web内容表单,需要访问内容面板内的控件。我知道有两种访问控件的方法:TextBoxtxt=(TextBox)Page.Controls[0].Controls[3].Controls[48].Controls[6]通过编写一个递归函数来搜索所有控件。有没有其他更简单的方法,因为Page.FindControl在这种情况下不起作用。我问的原因是我觉得Page对象或ContentPanel对象应该有一个方法来查找子控件,但找不到类似的方法。 最佳答案 问题是FindControl()不会遍历某些子控件,例如模板控件。如果您要查

c# - 安全异常 : Request for the permission of type 'System.Net.Mail.SmtpPermission'

这是“在本地工作,在服务器上不工作”的帖子之一。我有一个发送电子邮件的简单联系表单。在服务器上,我得到以下异常:SecurityExceptionDescription:Theapplicationattemptedtoperformanoperationnotallowedbythesecuritypolicy.Tograntthisapplicationtherequiredpermissionpleasecontactyoursystemadministratororchangetheapplication'strustlevelintheconfigurationfile.Ex

c# - IEnumerable<T> 线程安全?

我有一个填充List的主线程.此外,我创建了一个将在不同线程上执行的对象链,需要访问列表。原始列表生成后将永远不会被写入。我的想法是将列表传递为IEnumerable到在其他线程上执行的对象,主要是为了不允许那些实现这些对象的人错误地写入列表。换句话说,如果保证不写入原始列表,多线程使用.Where是否安全?或foreach在IEnumerable上?如果原始集合从未更改,我不确定迭代器本身是否是线程安全的。 最佳答案 IEnumerable无法修改。那么什么可以是非线程安全的呢?(如果您不修改实际的List)。对于非线程安全,您需

c# - Selenium 网络驱动程序中的弹出窗口

所以我在c#winform中使用seleniumfirefoxwebdrivers,我在下面有这段代码来获取当您单击“webtraffic_popup_start_button”时显示的弹出窗口的句柄,它应该获取弹出窗口的句柄,但弹出窗口句柄与当前句柄相同。stringcurrent=driver.CurrentWindowHandle;driver.FindElement(By.XPath("//*[@id='webtraffic_popup_start_button']")).Click();Thread.Sleep(Sleep_Seconds);popup=driver.Curr

c# - 我可以在不支付 Unity Multiplayer 服务的情况下使用 Unity 网络 HLAPI 吗?

我看到了Unity的Multiplayerservicepage,我完全糊涂了:我可以使用Unity'shigh-levelnetworkingAPI吗?(NetworkManager/NetworkManagerHUD)在已发布的游戏中,无需为UnityMatchmaker和中继服务器(无论它们是什么)付费?我有自己的基于云的虚拟机,我想在上面运行专用服务器。我的项目只是一个我会和friend一起玩的小游戏(没有商业或大型)。我想在我的VM上以专用服务器模式运行该游戏的已发布副本,让我的friend运行他们已发布的客户端副本并通过NetworkManager连接到服务器。我可以免费这

c# - MediaElement 网络视频不会停止缓冲

我正在使用MediaElement播放网络视频。当我离开页面时,我注意到任务管理器中我的应用程序仍在使用10%的网络,并且直到它完成视频下载后才停止。我尝试执行以下操作但没有成功。//openlink;mediaElement.Source=welcomeVideoURL;//whenIleavethepageOnNavigatedFrom()mediaElement.Stop();mediaElement.ClearValue(MediaElement.SourceProperty);mediaElement.Source=null;还尝试将源设置为虚拟链接,但仍然没有成功。我认为将

c# - 网络传输暂停

我用C#创建了一个服务器和一个传输文件的客户端。但是在传输时它会暂停几秒钟然后继续。我已经在YouTube上上传了一段视频来演示:http://www.youtube.com/watch?v=GGRKRW6ihLo如您所见,它有时会暂停然后继续。接收者:using(varwriter=newStreamWriter(Path.Combine(_localPath,file.FileName))){varbuffer=newbyte[_bufferSize];while(file.Transferred发件人:using(varreader=newStreamReader(file.Fi