了解在WCF中使用Thread.Sleep

时间:2015-06-09 19:32:08

标签: c# multithreading wcf

我正在使用nVLC和WCF进行流式传输,就像遥控器一样,我有以下疑问。在StartTransmission()操作中,如果我调用player.Play()而不调用Thread.Sleep(0),则方法结束并且没有任何反应。但是使用Thread.Sleep(0)方法结束但流式传输现在正在运行。答案是。

  1. 是否具有Thread.Sleep WCF远程过程中的特定功能?
  2. 当我使用Thread.Sleep(0)时,主线程生存期如何工作。

1 个答案:

答案 0 :(得分:2)

  1. 不,没有。
  2. WCF中没有主线程。也许nVLC库有一个。
  3. 这看起来像竞争条件。 Thread.Sleep(0)完成所花费的时间似乎足以让nVLC完成它的工作。

    我也考虑过COM消息,但Thread.Sleep(0) does not do that.