id | 要销毁的事件的 ID。 |
销毁具有给定 ID 的事件。您应该调用此方法来释放与事件关联的临时资源。尝试在事件被销毁后使用它,例如使用 IDeviceContext.Wait 或 IDeviceContext.IsCompleted 将导致未定义的行为。
// Create context. using var ctx = new RadeonRaysContext(); ctx.Initialize();
// Create buffer. BufferID buffer = ctx.CreateBuffer(sizeof(int) * 8); using var array = new NativeArray<int>(8, Allocator.Persistent, NativeArrayOptions.ClearMemory);
// Write to buffer and wait for completion. EventID evt = ctx.CreateEvent(); ctx.WriteBuffer(buffer.Slice<int>(), array, evt); var flushOk = ctx.Flush(); Assert.IsTrue(flushOk); var waitOk = ctx.Wait(evt); Assert.IsTrue(waitOk);
// Cleanup. After this point, we may no longer use `evt`. ctx.DestroyEvent(evt); ctx.DestroyBuffer(buffer);
DestroyEvent 的正确用法。