您的位置:首页 > 其它

reading and writing variable through lock in SSIS script task

2013-03-03 16:55 537 查看
why we need lock to read or write variables, if we don't use lock, sometimes a deadlock will occur.

writing variable:

private void WriteValue(string name,object value)
{
Variables variables = Dts.Variables;

try
{
Dts.VariableDispenser.LockOneForWrite(name, ref variables);
variables[name].Value = value;
}
finally
{
if (variables.Locked)
{
variables.Unlock();
}
}

}


reading variable:

private object ReadValue(string name)
{
Variables variables = Dts.Variables;

try
{
Dts.VariableDispenser.LockOneForRead(name, ref variables);
return variables[name].Value;
}
finally
{
if (variables.Locked)
{
variables.Unlock();
}
}
}


more information:

http://msdn.microsoft.com/en-us/library/microsoft.sqlserver.dts.runtime.variabledispenser.lockforwrite.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: