【c# – 获取图像大小而不在WPF中锁定文件】教程文章相关的互联网学习教程文章

c# – 在此ConcurrentDictionary缓存方案中需要锁定【代码】

我有以下代码来缓存我在多线程应用程序中使用的并发字典中的某些类的实例. 简单地说,当我使用id参数对类进行即时化时,它首先检查字典中是否存在具有给定id的私有类的实例,如果没有,则创建私有类的实例(这需要很长时间,有时几秒),并将其添加到字典中以供将来使用.public class SomeClass {private static readonly ConcurrentDictionary<int, PrivateClass> SomeClasses =new ConcurrentDictionary<int, PrivateClass>();private re...

c# – Bitmap区域已经被锁定,多线程环境【代码】

我正在使用一个通过多个线程调用main函数的API.我试图通过该函数访问另一个类中的Bitmap并从中进行写入,但即使将其设置为使用完全不同的对象实例,我遇到InvalidOperationException:位图区域已被锁定. 我已经尝试在main函数中锁定代码并调用Bitmap.LockBits(…).是的,当我完成时,会调用UnlockBits./* Part of Class B */public Surface imageSurface //Surface is a field of pixels, more or less.{get{if (_CurrImage != null &&...

C#-ASP.NET锁定线程方法【代码】

我正在使用C#开发ASP.NET表单Web应用程序.我有一种为客户创建新订单的方法.看起来与此类似;private string CreateOrder(string userName) {// Fetch current orderOrder order = FetchOrder(userName);if (order.OrderId == 0) {// Has no order yet, create a new oneorder.OrderNumber = Utility.GenerateOrderNumber();order.Save();}return order;}这里的问题是,两个请求(线程)中的1个客户有可能导致两次调用此方法,而另一个线...

我试图独占访问或使用单独的锁定对象的同一个对象上的c#-lock()?【代码】

private class MyClass {private static MyObject myObject = new MyObject();private void ModifyObject(){lock(myObject){myObject.UnsafeMethod();}} }可以锁定myObject吗?还是必须声明另一个专用的锁定对象?解决方法:很好,任何对象都足以充当存储锁状态的位置. 但是,在任何代码审查中,它都是一个强烈的危险信号,表明程序员在考虑错误的锁定方式. .NET中没有“锁定对象使其具有线程安全性”这样的东西.这个概念确实存在,这是许...

c#-进行大量PropertyUpdate时避免UI锁定

当您一次对UI进行大量更新时,我试图找到避免UI锁定的最佳方法. 基本前提是,在启动时,我的工具会在后台工作人员中的Perforce FSTAT上运行.这会生成非常大的文件及其信息列表.完成此操作后,在其RunWorkerCompleted函数中,我将该信息传播到TreeView内部的UI. 但是,这涉及许多属性更新!取决于其传播到的文件数.可以是5000个文件.这将完全锁定UI约3-5秒. 我想知道我是否可以异步更新UI,例如说一次传播10-20个文件,仍然让UI线程继续更新...

c#-在锁定文件中找不到所需的信息.确保目标中提到了.NETCore,Version = v5.0 / win10-anycpu

我正在使用Windows 10通用应用程序.目的是让JS前端连接到C#库以进行繁重的工作.虽然当我添加引用和trey进行编译时,出现以下错误Couldn’t find the required information in the lock file. Make sure youhave .NETCore,Version=v5.0/win10-anycpu mentioned in your targets.我环顾四周,在某些情况下,解决方案是更新我完成的Visual Studio和NuGet程序包. 任何建议都会很棒,谢谢解决方法:只需将构建配置更改为x86或ARM,它就可以工作...

c#-无法在Portrait,xamarin IOS中锁定一个视图控制器【代码】

我正在尝试仅使一个视图控制器锁定为纵向模式,同时允许所有其他视图为任意方向.这就是我试图放入homeViewController(我想保持肖像的那个)的方式.public override UIInterfaceOrientationMask GetSupportedInterfaceOrientations(){return UIInterfaceOrientationMask.Portrait;}public override UIInterfaceOrientation PreferredInterfaceOrientationForPresentation(){return UIInterfaceOrientation.Portrait;}public override ...

C#-锁定成本【代码】

我有一个缓存(由Web应用程序使用),该缓存在内部使用两个缓存-一个短期缓存(仅在请求内使用)和长期缓存(在各个请求中“永久”使用). 我有以下代码,请注意所有基础数??据结构都是线程安全的.public TCache Get(CacheDependency cachdeDependancy, Func<CacheDependency, TCache> cacheItemCreatorFunc) {TCache cacheItem;if (shortTermCache.TryGetValue(cachdeDependancy.Id, out cacheItem)){return cacheItem;}DateTime cacheDep...

c#-在两个连续的语句中读取/写入布尔时,是否需要锁定布尔?【代码】

我想知道这是否是线程安全的,或者(如果没有的话)我如何使其安全.它从计时器调用:private volatile bool _isSynchronizing;private void SynchronizeSessionCache(object state = null) {if (_isSynchronizing){Log.Warn($"Aborted synchronization of SessionCache with SessionManager because we are already synchronizing. Interval is: {SynchronizationInterval}");return;}_isSynchronizing = true;bool lockWasTaken = fa...

c#-以编程方式锁定Active Directory帐户【代码】

我必须以编程方式在C#中锁定Active Directory中的用户帐户. 不幸的是,它不能通过userAccountControl属性来工作.每当我将userAccountControl设置为528(=带锁定标志的普通帐户)时,Active Directory均不会接受该值,并且将其重置为512(=普通帐户),而无需另行通知. 现在,我试图通过提供不正确的凭据来锁定帐户(请参见下文),但这也不起作用.int retries = 0; while (!adsUser.IsAccountLocked && retries < MAX_LOCK_RETRIES) {retries++...

C#-从字典获取资源时锁定资源【代码】

我有一个跟踪对象的字典(ClientObject).字典和ClientObject都可以通过多个线程访问.当我修改或读取此字典中的任何对象时,我使用ReaderWriterLockSlim(rwl_clients)在字典上获得了读取或写入锁,然后在实际对象上获得了排他锁. 我只是想知道我是否正确使用了这些.net线程工具 例:rwl_clients.EnterReadLock(); ClientObject clobj; if(!m_clients.TryGetValue(key, out clobj))return; rwl_clients.ExitReadLock();SomeMethod(clobj...

c#-此模式的名称? (答案:带有双重检查锁定的延迟初始化)【代码】

考虑以下代码:public class Foo {private static object _lock = new object();public void NameDoesNotMatter(){if( SomeDataDoesNotExist() ){lock(_lock){if( SomeDataDoesNotExist() ){CreateSomeData();}else{// someone else also noticed the lack of data. We// both contended for the lock. The other guy won// and created the data, so we no longer need to.// But once he got out of the lock, we got in.// Th...

c# – 使用Zxing库,Xamarin.android应用程序扫描时,将屏幕方向锁定为纵向.【代码】

我已经看到它可以在相机配置管理器中完成,但不知道在哪里找到该文件??? 我已经添加:<activity android:name="MainActivity"android:configChanges="keyboardHidden|orientation" android:screenOrientation="portrait"/>现在主要活动被锁定在肖像上,但是当从内部活动运行zxing扫描仪时,屏幕在扫描期间旋转?解决方法:将其添加到Main活动以锁定方向[Activity (Label = "YourLabel", MainLauncher = true, ScreenOrientation = Andr...

c# – 如何解锁锁定括号内的线程【代码】

我试图将此C代码转换为C#:do{if (Node->NextNode == NULL) WaitForSingleObject(pThis->_Event, INFINITE);_critSect.Lock();if (Node->NextNode == NULL && !bRunning ) {_critSect.Unlock(); // can explicitly unlock herebreak;}_critSect.Unlock(); }while (Node->NextNode == NULL);在C中,我可以显式解锁线程,但C#只有一个括号.如何在破解之前在下面的代码中添加“解锁”功能?do{if (Node->NextNode == null) DataQueueEve...

c# – 如果富文本框具有焦点,如何打开大写锁定

我有一个带有丰富文本框控件的表单.有没有办法在富文本框控件具有焦点时启用大写锁定?如果富文本框失去焦点,请将其关闭?我正在使用C#解决方法:我建议改为捕获键输入并用相关的大写版本替换它.否则,想象一下用户在文本框中单击,切换到另一个应用程序,实现Caps Lock打开的情况,在沮丧的情况下在他们的计算机上抛出一块砖,然后切换回您的应用程序,其中光标位于文本框中,期望大写字母但Caps Lock现已关闭.