我正在阅读关于HTML5视频标签的文档,并不完全理解它.如果用户单击播放按钮或控制栏上的播放箭头,我认为您只有一个事件,该事件将指示视频正在播放.
但我读到:当播放音频/视频或不再暂停时,"播放"会激活,当音频/视频在暂停或停止缓冲后准备播放时,"播放"会激活.这听起来像第二个只有你暂停视频然后再次播放,而第一个发生然后,但也发生在你第一次启动视频时.但为什么这样呢?为什么不只是一个事件?
我正在开发一些实用程序来控制游戏服务器的线程,并正在尝试使用IDisposable"令牌",以便我可以使用这样的代码:
using(SyncToken playerListLock = Area.ReadPlayerList())
{
//some stuff with the player list here
}
Run Code Online (Sandbox Code Playgroud)
我的想法是,我在一个区域中的玩家列表上获得了一个读锁定,当它超出使用块的范围时,它会自动解锁.到目前为止,这一切都已实施并正在运行,但我担心电话会议的时间安排Dispose().
SyncLock当程序离开使用块然后稍后由垃圾收集器清理时,变量是否被简单地标记为处理,或者当前线程是否Dispose()作为离开using块的一部分执行该方法?
这种模式基本上是RAII,其中锁是被分配的资源.(即,使用这种模式的一个例子IDisposable"令牌")也已经在他的MiscUtils使用乔恩斯基特这里