- `Concurrency` - выполнение **многих задач одновременно**, но не обязательно параллельно. Применяется механизм [[Context Switching]]. - Показ видео в 3-ех вкладках на **одноядерной** системе. - `Multithreading` - запуск **нескольких потоков в одном процессе** (они могут работать параллельно, но не всегда). - Приложение, в котором создается 1_000 потоков на системе с 10 ядрами - многопоточное. **Необязательно**, чтобы все потоки будут работать одновременно. - `Parallelism` - **реальное параллельное выполнение** на нескольких ядрах процессора. - Приложение, в котором создается 10 потоков на системе с 10 ядрами - многопоточное. **Обязательно**, чтобы все потоки будут работать одновременно. - `Asynchronous` - **не ждет завершения задачи**, а выполняет другие операции в это время. - При загрузке файла выполняет другие задачи, изредка проверяя статус.
конкурентность - это когда есть конкуренция за ограниченные ресурсы, разве не так?
- `Concurrency` - выполнение **многих задач одновременно**, но не обязательно параллельно. Применяется механизм [[Context Switching]].
- Показ видео в 3-ех вкладках на **одноядерной** системе.
- `Multithreading` - запуск **нескольких потоков в одном процессе** (они могут работать параллельно, но не всегда).
- Приложение, в котором создается 1_000 потоков на системе с 10 ядрами - многопоточное. **Необязательно**, чтобы все потоки будут работать одновременно.
- `Parallelism` - **реальное параллельное выполнение** на нескольких ядрах процессора.
- Приложение, в котором создается 10 потоков на системе с 10 ядрами - многопоточное. **Обязательно**, чтобы все потоки будут работать одновременно.
- `Asynchronous` - **не ждет завершения задачи**, а выполняет другие операции в это время.
- При загрузке файла выполняет другие задачи, изредка проверяя статус.