retornos de rendimento na instrução lock
se eu tiver um retorno de rendimento em uma instrução de bloqueio, o bloqueio é retirado em cada rendimento (5 vezes no exemplo abaixo) ou apenas uma vez para todos os itens da lista?
obrigado
private List<string> _data = new List<string>(){"1","2","3","4","5"};
private object _locker =new object();
public IEnumerable<string> GetData()
{
lock (_locker)
{
foreach (string s in _data)
{
yield return s;
}
}
}