微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

[C#] 匿名方法的方便和安全

static void Main(string[] args)
        {
            int count = 5;

            //不安全写法
            Task.Run(() =>
            {
                Thread.Sleep(1000);
                Console.WriteLine("Main1_" + count);
            });
            //安全
            Test1(count);
            //安全
            Task.Factory.StartNew((c) =>
            {
                Thread.Sleep(1000);
                Console.WriteLine("Main2_" + c);
            },count);

            //不安全
            new Action(() =>
            {
                Thread.Sleep(1000);
                Console.WriteLine("Main3_" + count);
            }).BeginInvoke(null,null);
            //安全
            new Action<int>((c) =>
            {
                Thread.Sleep(1000);
                Console.WriteLine("Main4_" + c);
            }).BeginInvoke(count,null,null);

            count = 10;
            Console.WriteLine("ReadKey...");
            Console.ReadKey();
        }

        static void Test1(int count)
        {
            Task.Run(() =>
            {
                Thread.Sleep(1000);
                Console.WriteLine("Test_" + count);
            });
        }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐