一文搞懂:关于“isbuzy”问题

简介: 一文搞懂:关于“isbuzy”问题

"

潜水了2年,一直拜读大牛们的大作,感到自己的水平确实有限,拿不出手。但是固步自封显然是得不到提高的,故而仍出来献丑,希望得到大家的帮助,从而有所提高。

来由: 输出Autocad 时,经常会出现 “is buzy”的问题

这个问题是内存等资源不足引起的,在没有办法改变硬件环境,只能改善代码。

没想出好办法,使用原始的try catch,希望 高人能有彻底解决的方法。

public static TReturn Retry(Func func)

{

return Retry(10, new TimeSpan(100), true, func);

}

///

/// retry

///

/// 类型

///

重试次数

///

重试的时间间隔

//代码效果参考:https://v.youku.com/v_show/id_XNjQwNjg1MDg4OA==.html

///

是否抛出错误消息

///

方法体

///

public static TReturn Retry(int retryTimes, TimeSpan interval, bool throwIfFail,Func func)

{

TReturn returnValue = default(TReturn);

for (int i = 0; i < retryTimes; ++i)

{

try

{

returnValue = func();

break;

}

catch (Exception ex)

{

if (i == retryTimes - 1)

{

if (throwIfFail)

{

throw;

}

else

{

break;

}

}

else

{

if (interval != null)

{

System.Windows.Forms.Application.DoEvents();//

}

}

}

}

return returnValue;

}

使用:

///

/// Add Line

///

///

///

///

///

//代码效果参考:https://v.youku.com/v_show/id_XNjQwNjg1MjE3Ng==.html

public static AcadLine AddLine(AcadModelSpace acadModelSpace,object startPoint, object endPoint)

{

return Retry(()=>acadModelSpace.AddLine(startPoint,endPoint));

}


"
image.png
相关文章
|
机器学习/深度学习 人工智能 运维
10 分钟搞懂 LLMOps
10 分钟搞懂 LLMOps
870 0
|
人工智能 网络协议 算法
5 分钟搞懂 ECN
5 分钟搞懂 ECN
1678 0
|
5月前
|
C#
一文搞懂:一道关于C#linqwhere的面试题
一文搞懂:一道关于C#linqwhere的面试题
44 0
|
5月前
|
数据可视化 API
一文搞懂:【Havok】
一文搞懂:【Havok】
98 0
一文搞懂:_.cloneDeep(value)
一文搞懂:_.cloneDeep(value)
|
5月前
|
API
一文搞懂:关于串行接口
一文搞懂:关于串行接口
192 0
|
5月前
一文搞懂:【华为oj】iNOC产品部
一文搞懂:【华为oj】iNOC产品部
29 0
|
5月前
|
PHP
一文搞懂:yeild理解
一文搞懂:yeild理解
35 0
|
5月前
|
机器学习/深度学习 定位技术
一文搞懂:【OpenJ_Bailian
一文搞懂:【OpenJ_Bailian
33 0
|
5月前
|
前端开发 JavaScript
一文搞懂:【Reduc】ReactCounterExample
一文搞懂:【Reduc】ReactCounterExample
40 0