> -- Comdiv писал(а):
> Средствами самого языка без SYSTEM?
В принципе да, можно обойтись практически без SYSTEM (SYSTEM может потребоваться только для вызова WinApi функций, например, CreateThread и.т.д., а, если работа с потоками уже реализована, то и SYSTEM использовать не придется). Тут, конечно, много оговорок, что сделать-то, это можно, но это потребует определенной дисциплины программирования.
Взять, например, семантику параллельного запуска программ, которые, если не ошибаюсь ввел Дейкстра:
## Код:
```
parbegin
  proc1;
  proc2;
  proc3;
parend;
```

Конструкция parbegin параллельно запускает несколько процедур proc1, proc2, proc3.
Того же самого, можно добиться и без ввода новых конструкций в язык программирования, например, так:
## Код:
```
library.Add(proc1);
library.Add(proc2);
library.Add(proc3);
library.ExecuteAll;
```

А уже внутри библиотеки будет определенный пул потоков, который будет использоваться для запуска каких-то задач. Также библиотека будет ответственна за передачу сообщений.