<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
>
<channel>
<title><![CDATA[Hi.]]></title> 
<atom:link href="http://yesicoo.com/rss.php" rel="self" type="application/rss+xml" />
<description><![CDATA[当才华撑不起野心，就需要学习。]]></description>
<link>http://yesicoo.com/</link>
<language>zh-cn</language>
<generator>www.emlog.net</generator>
<item>
    <title>封装了一个方法，用于处理一些需要判断是否执行超时了的操作</title>
    <link>http://yesicoo.com/?post=1</link>
    <description><![CDATA[<p>封装了一个方法，用于处理一些需要判断是否执行超时了的操作</p>
<div class="cnblogs_Highlighter">
<pre class="brush:csharp;gutter:true;"> internal static T TimeoutCheck&lt;T&gt;(int ms, Func&lt;T&gt; func)
        {
            var wait = new ManualResetEvent(false);
            bool RunOK = false;
            var task = Task.Run&lt;T&gt;(() =&gt;
            {
                var result= func.Invoke();
                RunOK = true;
                wait.Set();
                return result;
            });
            wait.WaitOne(ms);
            if (RunOK)
            {
                return task.Result;
            }
            else
            {
                return default(T);
            }
        }
</pre>
</div>
<p>　　</p>
<p>调用：</p>
<div class="cnblogs_Highlighter">
<pre class="brush:csharp;gutter:true;"> 　　　　　　　　　　　　　　//1000毫秒检测 超时认为检测失败 
                        var checkResult = Tools.TimeoutCheck(1000, () =&gt;
                        {
                            //这里时执行的方法 必须要有返回

                        });
</pre>
</div>
<p>　　</p>]]></description>
    <pubDate>Thu, 12 Oct 2023 11:18:00 +0800</pubDate>
    <dc:creator>Qing</dc:creator>
    <guid>http://yesicoo.com/?post=1</guid>
</item></channel>
</rss>