|
|
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
добрый день, столкнулся с такой вот проблемкой: создаю две нити (на разные функции), каждая функция открывает СВОЙ файл и пишет туда чего-то. так вот пишут они в один файл (открытый первой нитью). Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 13:05 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
вдогонку более того если задержку ставить не между созданием нитей, а в одной из функций ПЕРЕД открытием файла, то тоже помогает. без задержек пробовал печатать дескрипторы открытых файлов - они одинаковы (хоть и открывались ДВА РАЗНЫХ файла) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 13:28 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
Нехорошо писать одновременно из разных потоков в один файл - заключи код записи в файл в критическую секцию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 13:30 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
ИнтеграторНехорошо писать одновременно из разных потоков в один файл - заключи код записи в файл в критическую секцию. они открывают два файла и, соответственно, писать должны в разные, только запись идет какого-то в один. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 13:34 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
Приведите код ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 13:40 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
код создания нитей Код: plaintext 1. 2. 3. 4. 5. 6. 7. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 13:45 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
у меня всё прекрасно работает, как и должно быть ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 13:57 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
Интегратору меня всё прекрасно работает, как и должно быть ;) гм... мне похоже везет меньше - этот код же упрямо пишет в один файл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 14:01 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
возможно дело в разнице crt библиотек(или какая там stdio.h реализует) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 14:06 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
alex_kвозможно дело в разнице crt библиотек(или какая там stdio.h реализует) пробовал и через open файл открывать - тоже самое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 14:08 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
Интегратору меня всё прекрасно работает, как и должно быть ;) у меня на трассировке тоже все ок, а просто ехешник запускаю - ни в какую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 14:16 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
alex_kвозможно дело в разнице crt библиотек(или какая там stdio.h реализует) спасибо за добрый совет :) LIBCMT.LIB Multithread static library, retail version ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 14:34 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
да и вообще насколько я слышал ,не больно то и рекомендуют использовать CreateThread функцию , она устарела и соталась только для поддержки Win16 юзай лутьше BeginThread/BeginThreadEx ш (';') (V),(V),, Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2005, 16:11 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
JibSkeartда и вообще насколько я слышал ,не больно то и рекомендуют использовать CreateThread функцию , она устарела и соталась только для поддержки Win16 юзай лутьше BeginThread/BeginThreadEx ш (';') (V),(V),, Код: plaintext Что вы батенька путаете :) CreateThread() - функция WinAPI _beginthread() - функция сишной библтотеки, её отличие в том что она инициализирует CRT. CreateThread() естевтенно это делать не может, но CRT будет проинициализированно при первом же обращении к любой функции Стишной стандартной библиотеке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 10:33 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
vitvsh alex_kвозможно дело в разнице crt библиотек(или какая там stdio.h реализует) спасибо за добрый совет :) LIBCMT.LIB Multithread static library, retail version Хехе - а ты что на single-threaded crt потоки создавал ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 10:34 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
[quot ИнтеграторХехе - а ты что на single-threaded crt потоки создавал ? [/quot] угу, теперь умнее буду :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 12:14 |
|
||
|
Thread и открытие файла
|
|||
|---|---|---|---|
|
#18+
Интегратор JibSkeartда и вообще насколько я слышал ,не больно то и рекомендуют использовать CreateThread функцию , она устарела и соталась только для поддержки Win16 юзай лутьше BeginThread/BeginThreadEx ш (';') (V),(V),, Код: plaintext Что вы батенька путаете :) CreateThread() - функция WinAPI _beginthread() - функция сишной библтотеки, её отличие в том что она инициализирует CRT. CreateThread() естевтенно это делать не может, но CRT будет проинициализированно при первом же обращении к любой функции Стишной стандартной библиотеке. Аха , точно , напомнил . значит я вообще с чемто другим попутал :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2005, 13:51 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=413&tid=2033630]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 198ms |
| total: | 336ms |

| 0 / 0 |
