原文写于:2008-02-04

    这几天在看C#多线程的东东,确保多个线程不死锁是比较难的,但要死锁很容易。试着写了段死锁的代码,见下文。
    环境:.NET 2.0
    基本思路:学OS时的经典问题,两个线程抢占两个资源,线程1抢到了资源A,还需要资源B;线程2抢到了资源B,还需要资源A;结果就死锁了。 
 1C#,多线程死锁很容易哦  using System;
 2C#,多线程死锁很容易哦  using System.Collections.Generic;
 3C#,多线程死锁很容易哦  using System.Text;
 4C#,多线程死锁很容易哦  using System.Threading;
 5C#,多线程死锁很容易哦     
 6C#,多线程死锁很容易哦  namespace MultiThreadTest
 7
     运行结果:
StartFromLocker1 got locker1
StartFromLocker2 got locker2
StartFromLocker1 waiting for locker2
StartFromLocker2 waiting for locker1
 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-14
  • 2021-06-29
  • 2021-11-23
  • 2021-11-21
  • 2021-10-18
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-11-04
  • 2022-01-15
  • 2021-12-03
相关资源
相似解决方案