本文整理汇总了C#中BookSleeve.RedisConnection.GetCounters方法的典型用法代码示例。如果您正苦于以下问题:C# RedisConnection.GetCounters方法的具体用法?C# RedisConnection.GetCounters怎么用?C# RedisConnection.GetCounters使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BookSleeve.RedisConnection
的用法示例。
在下文中一共展示了RedisConnection.GetCounters方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestLockOpCountByVersion
public void TestLockOpCountByVersion(RedisConnection conn, int expected, bool existFirst)
{
const int DB = 0, LockDuration = 30;
const string Key = "TestOpCountByVersion";
conn.Wait(conn.Open());
conn.Keys.Remove(DB, Key);
var newVal = "us:" + Config.CreateUniqueName();
string expectedVal = newVal;
if (existFirst)
{
expectedVal = "other:" + Config.CreateUniqueName();
conn.Strings.Set(DB, Key, expectedVal, LockDuration);
}
int countBefore = conn.GetCounters().MessagesSent;
var taken = conn.Wait(conn.Strings.TakeLock(DB, Key, newVal, LockDuration));
int countAfter = conn.GetCounters().MessagesSent;
var valAfter = conn.Wait(conn.Strings.GetString(DB, Key));
Assert.AreEqual(!existFirst, taken, "lock taken");
Assert.AreEqual(expectedVal, valAfter, "taker");
Assert.AreEqual(expected, (countAfter - countBefore) - 1, "expected ops (including ping)");
// note we get a ping from GetCounters
}