Pages: (5) 1 2 3 [4] 5  ( Show unread post )

> страдания по c++
 FiL Member is Offline
 Posted: 22-05-2013, 21:10 (post 46, #1076442)

Сварливый Мозг Клуба
Group: Roots
Group: Roots
Posts: 22883
У тебя страдания не по С++, а по каким-то только тебе понятно каким библиотекам в какой-то конкретной среде. Так ты-бы описал что и где. Хотя мне оно уже не поможет.
PM Email Poster ICQ AOL MSN
Top Bottom
 Гордый Member is Offline
   Posted: 22-05-2013, 21:25 (post 47, #1076449)

proRock
Group: Netlab Soldier
Group: Netlab Soldier
Posts: 25095
Warn:0%-----
QUOTE (FiL @ 22-05-2013, 20:10)
Хотя мне оно уже не поможет.
интересно, а что может помочь FiLу!? :w00t:
PM
Top Bottom
 Set Member is Offline
 Posted: 23-05-2013, 13:17 (post 48, #1076469)

Visionary

Group: Members
Posts: 5181
Warn:0%-----
Спирт... и много. :laugh:
PM
Top Bottom
 Lord KiRon Member is Offline
 Posted: 23-05-2013, 16:41 (post 49, #1076482)

Part time flamer

Group: Read Only
Posts: 7784
Warn:0%-----
Ты в начале реши - тебе твой диалог нужен модальным или нет, если модальным, то не страдай херней оно и так работать будет. Есали немодальный то открываешь диалог , а работу делаешь в треде и туда пишешь, только обновлять надо через меседжи, а не напрямую, а то падать будет рандомально.
PM
Top Bottom
 Lexus Member is Offline
 Posted: 23-05-2013, 16:47 (post 50, #1076483)

Коллекционер
Group: Global Moders
Group: Global Moders
Posts: 10401
QUOTE (Lord KiRon @ 23-05-2013, 15:41)
Ты в начале реши - тебе твой диалог нужен модальным или нет, если модальным, то не страдай херней оно и так работать будет. Есали немодальный то открываешь диалог , а работу делаешь в треде и туда пишешь, только обновлять надо через меседжи, а не напрямую, а то падать будет рандомально.
Я сейчас открываю так

RunLog RunLogDlg;
RunLogDlg.DoModal();

а можно для дебила на пальцах как с треда писать туда?
PM Email Poster Users Website
Top Bottom
 Lord KiRon Member is Offline
 Posted: 24-05-2013, 17:28 (post 51, #1076550)

Part time flamer

Group: Read Only
Posts: 7784
Warn:0%-----
DoModal Создает модальный диалог, который пока не закроешь ничего не работает в "родительском окне", тебе надо сделать Create, тогда будет не модальный, это раз.
Насчет писать.
Лучше всего в него не писать, а сделать так чтоб он сам читал из какого-то списка например, при получении определенного месаджа WM_USER + xxxx , который посылается ему с твоего потока, а твой поток в этот лист добавляет.
Главное не забудь синхронизировать этот список, например critical section, то есть локай его когда твой поток добавляет и когда диалог считывает.
Это простейший к имплементации вариант.
PM
Top Bottom
 Lexus Member is Offline
 Posted: 29-07-2013, 16:00 (post 52, #1078738)

Коллекционер
Group: Global Moders
Group: Global Moders
Posts: 10401
Так. С GUI уже всё отлажено и робит ;)

Теперь встал вопрос эфективности. Выяснилось, что файло пишется очень медленно. Всё время использовал output<<matrix[i][j]<<"\n"; это тормозит всё дико. Есть-ли варианты писать в текстовый файл по быстрее?
fputs, fprintf?
PM Email Poster Users Website
Top Bottom
 Set Member is Offline
 Posted: 29-07-2013, 23:18 (post 53, #1078744)

Visionary

Group: Members
Posts: 5181
Warn:0%-----
raid 0 на ssd :crazy:
PM
Top Bottom
 Lexus Member is Offline
 Posted: 30-07-2013, 09:04 (post 54, #1078749)

Коллекционер
Group: Global Moders
Group: Global Moders
Posts: 10401
QUOTE (Set @ 29-07-2013, 22:18)
raid 0 на ssd :crazy:
Прикол в том, что диск меньше всего дрочится. в момент записи проц завален, а а хард еле подмигивает. хард ссд. Мне кажется запись через stream медленная. но чем и как заменить хз
PM Email Poster Users Website
Top Bottom
 FiL Member is Offline
 Posted: 30-07-2013, 17:14 (post 55, #1078754)

Сварливый Мозг Клуба
Group: Roots
Group: Roots
Posts: 22883
a как файлт открывается?
PM Email Poster ICQ AOL MSN
Top Bottom
 Lexus Member is Offline
 Posted: 30-07-2013, 17:46 (post 56, #1078755)

Коллекционер
Group: Global Moders
Group: Global Moders
Posts: 10401
QUOTE (FiL @ 30-07-2013, 16:14)
a как файлт открывается?
ofstream
PM Email Poster Users Website
Top Bottom
 Set Member is Offline
 Posted: 31-07-2013, 02:04 (post 57, #1078765)

Visionary

Group: Members
Posts: 5181
Warn:0%-----
QUOTE (Lexus @ 29-07-2013, 16:00)
Есть-ли варианты писать в текстовый файл по быстрее?
fputs, fprintf?
Определённо это будет быстрее.
PM
Top Bottom
 FiL Member is Offline
 Posted: 01-08-2013, 03:23 (post 58, #1078801)

Сварливый Мозг Клуба
Group: Roots
Group: Roots
Posts: 22883
QUOTE (Lexus @ 30-07-2013, 02:04)
QUOTE (Set @ 29-07-2013, 22:18)
raid 0 на ssd :crazy:
Прикол в том, что диск меньше всего дрочится. в момент записи проц завален, а а хард еле подмигивает. хард ссд. Мне кажется запись через stream медленная. но чем и как заменить хз
Запись через потоки не медленная. Медленная побайтовая запись в файл. Таки stream << num в конечном итоге приводит к put, который медленный. Так что лучше-бы формировать блок в памяти и потом записывать его через stream::write.

P.S. А как файл открывается таки не важно :&#041;
PM Email Poster ICQ AOL MSN
Top Bottom
 Lexus Member is Offline
 Posted: 01-08-2013, 07:11 (post 59, #1078805)

Коллекционер
Group: Global Moders
Group: Global Moders
Posts: 10401
QUOTE (FiL @ 01-08-2013, 02:23)
Запись через потоки не медленная. Медленная побайтовая запись в файл. Таки stream << num в конечном итоге приводит к put, который медленный. Так что лучше-бы формировать блок в памяти и потом записывать его через stream::write.

P.S. А как файл открывается таки не важно :&#041;
Почитал доку к пут, пут пишет всё дело блоками автоматом, по дефолту идёт буффер BUFMAX и потом flush на хард. Заменил stream<<num на fprintf - время записи сократилось в двое, но формотирование другое, надо поиграться будет.

А нельза кк-то в память загнать блок, скажем так 50мб, и потом его за раз записать?
PM Email Poster Users Website
Top Bottom
 FiL Member is Offline
 Posted: 01-08-2013, 17:21 (post 60, #1078823)

Сварливый Мозг Клуба
Group: Roots
Group: Roots
Posts: 22883
ну я-же сказал... через write. Выделяешь 50 мегов в памяти, суешь туда чего надо и потом write ему.
по поводу Put - да, оно в буфер, а потом flush. Теперь вопрос - а когда "потом" этот flush происходит?
PM Email Poster ICQ AOL MSN
Top Bottom
Topic Options Pages: (5) 1 2 3 [4] 5