Книга: Программирование мобильных устройств на платформе .NET Compact Framework
В простых случаях пытайтесь обойтись без многопоточного выполнения, используя курсоры ожидания
В простых случаях пытайтесь обойтись без многопоточного выполнения, используя курсоры ожидания
Курсоры ожидания — это вариант многопоточности "для бедных", который, тем не менее, обладает множеством достоинств, основным из которых является его простота. В этом случае полезная работа не передается фоновому потоку для выполнения в асинхронном режиме, однако, как бы в качестве вежливого извинения перед пользователем за то, что приложение все еще выполняет порученную задачу и ее завершения придется немного подождать, отображается курсор ожидания.
Если вам предварительно известно, в каких местах программы происходит задержка, предусмотрите вывод на экран курсора ожидания, появление которого укажет пользователю на то, что приложение выполняется, а исчезновение — на восстановление способности приложения к интерактивному взаимодействию. Вашей первой линией обороны в плане обеспечения добротного пользовательского интерфейса должно быть уведомление пользователя о том, что в течение ближайшего времени интерфейс не будет реагировать на его запросы. Отображение курсора ожидания — это неплохой способ информирования пользователей о том, что работа выполняется и вскоре будет завершена.
- Назначайте обслуживание пользовательского интерфейса основному потоку
- Стремитесь поддерживать способность пользовательского интерфейса к отклику на высоком уровне
- Начинайте с создания однопоточного приложения
- В простых случаях пытайтесь обойтись без многопоточного выполнения, используя курсоры ожидания
- Рассмотрите возможность использования фоновых потоков, если выполнение задачи требует длительного или неопределенного времени
- Максимально упрощайте многопоточный код и документируйте его для повышения надежности
- Рассмотрите возможность предварительного выполнения некоторой работы, осуществляемой кодом
- Права для выполнения резервного копирования
- Восстановление "безнадежных" баз данных. InterBase Surgeon
- Система безопасности InterBase
- Общие рекомендации по безопасности
- Надежность и безопасность
- Ограничение времени ожидания для транзакций (Lock timeout)
- Упражнения для самостоятельного выполнения
- Безопасная работа с внешними таблицами
- Конфигурация безопасности для базы данных
- Интегрированная безопасность (NT Integrated Security)
- Безопасность временных таблиц
- Безопасность внешних таблиц. Параметр EXTERNAL FILE DIRECTORY