Operation is not supported on this platform

vokxchh vokxchh 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;

namespace MahApps.Metro.netcoreapp30
{
public delegate void DoHandler();

public class Timeout
{
private ManualResetEvent mTimeoutObject;
//标记变量  
private bool mBoTimeout;

public DoHandler Do;

public Timeout()
{
//  初始状态为 停止  
this.mTimeoutObject = new ManualResetEvent(true);
}
///<summary>  
        /// 指定超时时间 异步执行某个方法  
        ///</summary>  
        ///<returns>执行 是否超时</returns>  
public bool DoWithTimeout(TimeSpan timeSpan)
{
if (this.Do == null)
{
return false;
}
this.mTimeoutObject.Reset();
this.mBoTimeout = true; //标记  
            this.Do.BeginInvoke(DoAsyncCallBack, null);
// 等待 信号Set  
if (!this.mTimeoutObject.WaitOne(timeSpan, false))
{
this.mBoTimeout = true;
}
return this.mBoTimeout;
}
///<summary>  
        /// 异步委托 回调函数  
        ///</summary>  
        ///<param name="result"></param>  
private void DoAsyncCallBack(IAsyncResult result)
{
try
{
this.Do.EndInvoke(result);
// 指示方法的执行未超时  
this.mBoTimeout = false;
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
this.mBoTimeout = true;
}
finally
{
this.mTimeoutObject.Set();
}
}
}
}


this.Do.BeginInvoke(DoAsyncCallBack, null);
这行。net core 3.0报错,Operation is not supported on this platform 。之前wpf能正常用的。迁移不了了。。。
net core 不能委托吗?
...全文

相关推荐

评论 8
收藏 已收藏
分享
返回顶部
vokxchh
.NET技术前瞻 13,343 成员 5,385 内容