Pull to refresh
7
0
Send message

Contract Interfaces & Inheritance

Reading time6 min
Views6K


Давайте поговорим о темной стороне силы, а именно – о проблемах в использовании контрактов. О тех милых мелочах, которые аккуратно обходятся разработчиками библиотеки и привносят такую немаленькую бочку дегтя в крохотный горшочек меда.

Читать дальше →
Total votes 8: ↑6 and ↓2+4
Comments0

Liskov Substitution Principle & Contracts

Reading time1 min
Views2.6K
При работе с контрактами существует несколько неприятных вещей, которые приходится обходить. Например, не к ночи помянутый Liskov Substitution Principle, которого придерживаются разработчики Contracts.

Читать дальше →
Total votes 8: ↑3 and ↓5-2
Comments7

Windows Forms & Invoke from parallel threads

Reading time2 min
Views15K
При переделке старой формы столкнулся с забавной проблемой.

Задача – классическая: вывести пользователю информацию о происходящем в фоне процессе.

Казалось бы, ничего сложного. В основной форме мы стартуем поток, в нем проводим обработку данных, при получении новых статусов – сбрасываем обновление на форму, проводя синхронизацию с базовым UI Thread (Invoke / BeginInvoke call).

И все хорошо до момента, пока наш background поток не попытается создать еще один-два-… Которым делегирует дополнительную работу в рамках задачи. Вот с этими-то новыми потоками и начинается чехарда…
Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments17

Information

Rating
Does not participate
Registered
Activity