создаю класс - вторичный поток для чтения данных, в нем в функция run() имеет вот такой вид:Код: ... sfp = new StructForPole; QDataStream in(file); Rez_10_A2 *buf; while(!in.atEnd()) { in.readRawData((char *)buf,42); sfp->addRez(*buf); } ...программа зависает, и когда я её тестил не работала именно функция in.readRawData((char *)buf,42);(если её закоментить - всё пашет) пробывал заменить на file->read((char *)buf,42) тотже эфект, долго прыгал в дебагере, вроде зависает функция memcpy();помогите понять...заработало когда создал вспомогательную переменную chКод: Rez_10_A2 *buf; char *ch; while(!file->atEnd()) { file->read(ch,42); buf = (Rez_10_A2 *)ch; sfp->addRez(*buf); } file->close();как так? в основном потоке работал и предыдущий код...
|