本文整理汇总了C#中Block.validateMinMax方法的典型用法代码示例。如果您正苦于以下问题:C# Block.validateMinMax方法的具体用法?C# Block.validateMinMax怎么用?C# Block.validateMinMax使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Block
的用法示例。
在下文中一共展示了Block.validateMinMax方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: init
public void init (SqlConnection conn)
{
// Check if blocks have already been loaded
if (_all_blocks.Count != 0)
return;
lock (_sync_object)
{
// Check again
if (_all_blocks.Count != 0)
return;
int? max_part = BingoSqlUtils.ExecIntQuery(conn,
"SELECT MAX(part) from {0}", _index_data.fingerprintsTable);
if (!max_part.HasValue)
return;
using (SqlCommand command =
new SqlCommand("SELECT [part], [used], [counters], [mapping] from " +
_index_data.fingerprintsTable + " ORDER BY [part]", conn))
{
command.CommandTimeout = 3600;
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
Block new_block = new Block(false, _fp_bytes);
new_block.part = Convert.ToInt32(reader[0]);
int used = Convert.ToInt32(reader[1]);
byte[] counters = (byte[])reader[2];
byte[] mapping = (byte[])reader[3];
// Copy mapping
int[] data = new int[used];
Buffer.BlockCopy(mapping, 0, data, 0, mapping.Length);
new_block.indices.AddRange(data);
new_block.validateMinMax();
// Copy counters
Buffer.BlockCopy(counters, 0, new_block.counters, 0, counters.Length);
_all_blocks.Add(new_block);
}
}
}
}
}
示例2: _validateBlockIndices
private void _validateBlockIndices (SqlConnection conn, Block block)
{
if (block.indices != null)
return;
lock (_sync_object)
{
if (block.indices != null)
return;
BingoLog.logMessage("validating fingerprint {0} block indices", block.part);
using (SqlCommand command =
new SqlCommand("SELECT [mapping], [used] from " +
_index_data.fingerprintsTable + " WHERE [part] = " + block.part, conn))
{
command.CommandTimeout = 3600;
using (SqlDataReader reader = command.ExecuteReader())
{
if (!reader.Read())
throw new Exception("Cannot read fingerprint " + block.part + " block");
byte[] mapping = (byte[])reader[0];
int used = Convert.ToInt32(reader[1]);
// Copy mapping
int[] data = new int[used];
Buffer.BlockCopy(mapping, 0, data, 0, mapping.Length);
block.indices = new List<int>();
block.indices.AddRange(data);
block.validateMinMax();
}
}
}
}