Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(207评价)
优惠后 ¥1899.00优惠前 ¥2499.00 双十一全年最大力度限时优惠
1对1 答疑即时回复7天无理由退款30天价保提问必答

服务保障

1对1 答疑

提供专属的一对一在线答疑,快速答疑解惑。

即时回复

及时响应学习咨询,帮助解决问题。

7天无理由退款

购买后7天内可申请无理由退款。

30天价保

购买后30天内如遇降价,可申请价保。

提问必答

对于提问做到有问必答,帮您扫清学习过程中的种种障碍

C#通过委托开启线程
淫魔灭世发起了问答2018-05-02
1
回复
1519
浏览

开启线程时报错,源码如下:

using System;
using System.Threading;

namespace _016_线程_委托方式发起线程
{
    class Program
    {
        static void Test()
        {
            Console.WriteLine("Test");
            Thread.Sleep(100);
        }
        static void Main(string[] args)
        {
            //在Main线程中执行一个线程,里面语句的执行是从上到下的
            //1.通过委托开启一个线程
            Action a = Test;
            IAsyncResult ar = a.BeginInvoke(null, null);
            //开启一个新线程去执行a所引用的方法
            //IAsyncResult可以取得当前线程的状态
            //可以认为线程是同时执行的(异步执行)
            if (ar.IsCompleted == false)
            {
                Console.Write(".");
            }
            Console.WriteLine("Main");
            Console.ReadKey();
        }
    }
}

错误的详细信息:

System.PlatformNotSupportedException
  HResult=0x80131539
  Message=Operation is not supported on this platform.
  Source=System.Private.CoreLib
  StackTrace:
   at System.Action.BeginInvoke(AsyncCallback callback, Object object)
   at _016_线程_委托方式发起线程.Program.Main(String[] args) in E:\Visual Studio 2017\学习C sharp高级篇\016-线程-委托方式发起线程\Program.cs:line 18

所有回复
  • siki • 2018-05-03

    这里提示不能通过Action来开启线程,当前平台不支持

    你可以更换。net版本更高的平台试下,也可以使用别的方式开启线程

    还有-5条回复,点击查看
    你还没有登录,请先登录或注册!
发表回复
你还没有登录,请先 登录或 注册!