怎么没有人回答呀!!!!!!!!!
请大家帮帮我好吗???

解决方案 »

  1.   

    if ((t1.ThreadState & ThreadState.Background) == ThreadState.Background)
    只是判断当前线程是否"包含" Background,而不管同时可能存在 Suspended等其他情况,
    只要有Backgroud状态,就返回true;
    而if (t1.ThreadState == ThreadState.Background)
    则判断当前线程是否"只有" Background这种状态,如果包含了任何其他状态如 Suspended就返回false.也就是说前者是判断包含关系相当于">="
          而后者是判断相等关系相当于"=="主要在于ThreadState可以同时包含多个状态
    如:  (trd.ThreadState&(ThreadState.Background|ThreadState.WaitSleepJoin))==0 等组合方式