Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
n1k
0 / 0 / 0
Регистрация: 02.01.2014
Сообщений: 4
#1

Ошибка доступа после fclose - C++

02.01.2014, 23:40. Просмотров 285. Ответов 2
Метки нет (Все метки)

Всем привет. Использую в проекте запись в бинарный файл с помощью функций fwrite, fopen, fclose. Иногда (примерно каждый 10-20 файл), происходит ошибка доступа к файлу, т.е. "файл используется другим приложением" (т.е. моим), при этом в консоли я вижу, что fclose выполнена успешно. В чем может быть проблема? Программа многопоточная, имя файла передается в другой поток, после успешного fclose, но другой поток не может с ним работать. Если нужно, могу показать программный код.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.01.2014, 23:40     Ошибка доступа после fclose
Посмотрите здесь:

Функция fclose() и EOF - C++
int fclose( FILE *stream); Возвращает 0, если все ОК и возращает EOF, если какая-нибудь ошибка. Функция имеет тип Int. Значит...

Работа с текстом, функции fopen и fclose - C++
Друзья, помогите! Не могу понять в чём тут дело. я убрал поток и начал использовать функции fopen и fclose. Но при компиляции программа...

Ошибка доступа на break - C++
Здравствуйте! Пишу программу, по сути являющуюся мини базой данных, в которой должна быть возможность сохранить и загрузить базу. ...

Ошибка доступа к полю - C++
#include <iostream> using namespace std; int i = 0; class CDate { protected: int Year; int Month;

ООП c++ ошибка доступа - C++
Всем привет,проблема с файлами,после того как написал код и раскинул его по файлам(в rectangle.cpp и rectangle hpp) пропал доступ к...

Ошибка доступа к стеку - C++
Привет Вот такая есть задача Design a stack that supports push, pop, top, and retrieving the minimum element in constant time. ...

Ошибка доступа по адресу 0x00000000 - C++
#include <iostream> #include <fstream> #include <stdio.h> #include <conio.h> #include <string.h> using namespace std; FILE...

Ошибка прав доступа записи - C++
Делаю массив структур и при заполнении возникает данная ошибка. struct phone{ char* model = ""; char* manufacture = ""; ...

Ошибка: Нарушение прав доступа - C++
Здравствуйте, пишу программу для минимизации канонических выражений (сумм минтермов). Проблема такая - всё компилируется, а при...

RTTI ошибка прав доступа - C++
Всем привет! Выполняю задание лафоре 12 упражнение главы 12. Там необходимо внести некоторые изменени я в написанную им программу. Скачал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ВАСИЛЕВС
555 / 478 / 60
Регистрация: 14.02.2012
Сообщений: 1,561
03.01.2014, 00:00     Ошибка доступа после fclose #2
Цитата Сообщение от n1k Посмотреть сообщение
Программа многопоточная
Банально не успевает? Используете блокировку ресурсов(мьютексы например)?
n1k
0 / 0 / 0
Регистрация: 02.01.2014
Сообщений: 4
03.01.2014, 00:05  [ТС]     Ошибка доступа после fclose #3
Да, разумеется. Используется общий mutex, где CheckSignalsAndWriteInFile(..), решает за открытие/запись/открытие файла
C++ (Qt)
1
2
3
mutex.lock();
CheckSignalsAndWriteInFile(ReadBlock);
mutex.unlock();
Yandex
Объявления
03.01.2014, 00:05     Ошибка доступа после fclose
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru