|
|
|
| Сталкнулся с таким понятием на одном форуме по С++. Есть представление что такое поток. А вот что такое мультипоточность, для чего нужна и как сделать реализацию??? | |
|
|
|
|
|
|
|
для: Boss
(25.07.2006 в 11:15)
| | Каждый процесс может запускать несколько потоков, один допустим обрабатывает запросы от GUI-интерфейса, другой что-то обсчитывает в это время, третий рвётся на сайт программы за свежими новостями - выполняются они одновременно, это и называется многопоточным выполнением или мультипоточностью. Создаётся поток при помощи API-функции CreateThread в Windows или при помощи системного вызова fork в UNIX. Программирование их дело достаточно муторное, так как приходится заботиться о синхронизации, когда несколько потоков обращаются к одному и тому же ресурсу, например, файлу. | |
|
|
|
|
|
|
|
для: cheops
(25.07.2006 в 11:43)
| | А вообще как в чистом С++, реализовывать несколько потоков?
Например у меня есть 3 файла объемом 20 мб каждый, мне нужно обработать их не по отдельности(через цикл например), а одновременно? | |
|
|
|
|
|
|
|
для: Boss
(25.07.2006 в 11:55)
| | Чистый С++ не обладает такой способностью, так как потоки - это сугубо юрисдикция операционной системы, каждая операционная система реализует их по разному и предоставляет свой собственный интерфейс для работы с ними. | |
|
|
|
|
|
|
|
для: cheops
(25.07.2006 в 13:15)
| | А веть это же можно реализовать, если запустить сразу несколько приложений?
Или нет? | |
|
|
|
|
|
|
|
для: CrazyAngel
(25.07.2006 в 14:10)
| | Одновременное исполнениен нескольких приложений и есть системная реализация многопоточности.
Например, в DOSe такое невозможно | |
|
|
|
|
|
|
|
для: BobiKK
(25.07.2006 в 14:17)
| | Это на уровне операционной системы, а так каждый отдельный процесс внутри себя может выпонять отдельные потоки, т.е. здесь имеется многопоточность в рамках одного приложения. | |
|
|
|