Вы можете моделировать продолжать использование goto и маркируете .
DECLARE
done BOOLEAN;
BEGIN
FOR i IN 1..50 LOOP
IF done THEN
GOTO end_loop;
END IF;
<> -- not allowed unless an executable statement follows
NULL; -- add NULL statement to avoid error
END LOOP; -- raises an error without the previous NULL
END;
Во-первых, это не 19.
При запуске команды «Hello, World!» Приложение WPF, я вижу 10 потоков в диспетчере задач. При запуске того же приложения с использованием отладчика Visual Studio оно использует 19. Итак, во-первых, вычтите 9 из них, добавленных в качестве накладных расходов отладчика.
Теперь о 10 .
Согласно статье журнала MSDN Magazine «Создавайте больше отзывчивых приложений с помощью Диспетчера» , WPF начинается с двух потоков:
Все приложения WPF начинаются с два важных потока, один для рендеринга и один для управления пользовательским интерфейсом . Поток рендеринга это скрытый поток, который работает в фон, поэтому единственный поток, который вы обычно имеете дело с пользовательским интерфейсом thread.
Но согласно этой статье , есть много основных потоков во всех управляемых приложениях, WPF или нет:
Существуют разные типы .NET потоки: финализатор, сборщик мусора, отладчик, таймер, пул потоков, первичный и фоновые темы. Но не все управляются потоки, относящиеся к .NET.
Начиная с два из WPF, добавьте GC и финализатор, чтобы получить до четыре . Добавьте поток отладчика (он есть у всех управляемых приложений, даже если они не отлаживаются), чтобы получить пять . Добавьте таймер, чтобы получить шесть .
И, подключив отладчик к моему приложению WPF после его запуска вне VS, я вижу, что в пуле потоков есть два рабочих потока. Это скорее всего минимум. Это увеличивает мое приложение до восьми .
Есть два, которые я не могу точно учесть, но они, вероятно, являются потоками COM для взаимодействия (они определенно не являются управляемыми потоками). Вторая статья , на которую я ссылался, обсуждает больше из них.
Но настоящая мораль истории здесь - не беспокойтесь о них. Если ванильное "Hello, World!" приложение использует 10, это ваш базовый уровень. Беспокойтесь только о потоках, которые вы создаете сверх этого минимума.