多人在线游戏unity c# SDK
我想通过expectedValues参数,使得调用SetCustomProperties方法的时候能实现CAS的效果,示例代码如下:
// 初始Room中并未设置key0属性.
// 我期望通过下面的代码将key0 设置为value0
var props = new PlayObject{{"key0", "value0"}};
var expectedValue = new PlayObject{{"key0", null}};
// 执行完下面的代码后, client.Room.CustomProperties中没有“key0”
await client.Room.SetCustomProperties(props, expectedValue);
// 下面代码设置key0, 可以设置成功, 但并发情况下无法保证设置正确
// await client.Room.SetCustomProperties(props)
经过测试发现, 通过上面的代码设置Room的自定义属性的时候,并没有设置成功(Room中找不到key0属性).
所以我的问题是, 我需要使用CAS的方式设置Room的自定义属性, 而当初始Room中没有设置某个属性propA时, 我应该如何定义expected的值,使得propA能够设置正确.