Для чего используется ключевое слово yield в C#?



В How Can I Expose Only a Fragment of IList вопрос один из ответов имел следующий фрагмент кода:



IEnumerable<object> FilteredList()
{
foreach( object item in FullList )
{
if( IsItemInPartialList( item )
yield return item;
}
}


что там делает ключевое слово yield? Я видел его ссылки в нескольких местах и еще один вопрос, но я не совсем понял, что он на самом деле делает. Я привык думать о выходе в смысле того, что одна нить уступает другой, но здесь это не кажется уместным.

580   0  

Comments

    Ничего не найдено.