Здравствуйте, _FRED_, Вы писали:
_FR>Я перечитал ещё раз код в стартовом сообщении и не увидел, чтобы хоть одно из полей, объявление которых вы рекомендовали изменить подобным образом, менялось бы из разных потоков
Здравствуйте, Sharov, Вы писали:
S>Чем не из разных потоков доступ к одним и тем же переменным.
Он там намекал на то, что документация написана не очень понятно. Что её можно понять так, будто проблемы будут если несколько потоков меняют переменную.
Всё сказанное выше — личное мнение, если не указано обратное.
Здравствуйте, Sharov, Вы писали:
S>Зачем сразу использовать контекст синхронизации, почему бы не использовать Control.Invoke?
Это не гибко: таски легко джойнятся между собой. Мы когда-то так и делали (у меня на предыдущей работе), потом стали просто таски джойнить. Слишком часто оказывается, что после того, как ты показал что-то в гуе, нужно сразу же запускать другую задачу.
Всё сказанное выше — личное мнение, если не указано обратное.
Имейте ввиду, здесь есть люди которые за такое могут покаличить вашу психику. Если это не автотаск, то как звучало задание? Может, он хотели от вас упора на Rx, может, они хотели посмотреть, будете ли вы делать синхронизацию внутри обработчика событий, а может, просто хотели минимум кода и BW??
Здравствуйте, Философ, Вы писали:
S>>Зачем сразу использовать контекст синхронизации, почему бы не использовать Control.Invoke? Ф>Это не гибко: таски легко джойнятся между собой. Мы когда-то так и делали (у меня на предыдущей работе), потом стали просто таски джойнить. Слишком часто оказывается, что после того, как ты показал что-то в гуе, нужно сразу же запускать другую задачу.
Не понял при чем здесь джойны тасков и ctrl.invoke? Тем более, что это одно и то же по сути -- тыц. Т.е. у нас получается зависимость от посторонней сущности вместо использования уже доступных
контролов. Я бы убрал sync context из кода.
Здравствуйте, Sharov, Вы писали:
_FR>>Я перечитал ещё раз код в стартовом сообщении и не увидел, чтобы хоть одно из полей, объявление которых вы рекомендовали изменить подобным образом, менялось бы из разных потоков
S>Чем не из разных потоков доступ к одним и тем же переменным.
Философ процитировал документацию, в которой говорилось
Ключевое слово volatile означает, что поле может изменить несколько потоков, выполняемых одновременно…
Я же в отквоченном заметил, что в примере поле из нескрольких потоков не меняется. Мне кажется, что есть некоторая разница между "доступом" (то есть, в том числе, "чтением") и "изменением".
Help will always be given at Hogwarts to those who ask for it.