2009-11-15 3 views
0

Я новичок на нитей здесь вопрос,Многопоточность на открытие файла копии и записывать

У меня есть 3 темы, один из них вызывает метод, который записывает в файл с помощью метода File.AppendAllText, другой поток дублирует текст в том же файле, а последний поток читает текст из файла и печатает на этикетке.

Когда я запускаю потоки при одном и том же событии нажатия кнопки, он дает ошибку, что файл используется другим приложением, я знаю, почему он дает эту ошибку, но как я могу это достичь?

ответ

2

Вы можете связать нити вместе. т.е. когда поток 1 завершает работу, начинается поток 2 и т. д.

Файловые операции, вероятно, являются наихудшей вещью, с которой вы можете попытаться ввести параллелизм и, если честно, вам не нужны эти три потока, запущенные одновременно , На самом деле нет смысла запускать все 3 потока одновременно, потому что вы не знаете, в каком порядке они будут запускаться, и это имеет решающее значение для вашей работы.

+0

спасибо за ответ, я использую 3 темы, потому что наш учитель хочет этого, я новичок в многопоточности. – zer0w1dthspace

+0

Используйте нитки, чтобы остановить зависание UI, но их нужно запускать в порядке. –

Смежные вопросы