Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovДля оконной программы я бы при завершении потока посылал из него сообщение окну, а там уменьшал счётчик запущенных потоков. Дошёл до нуля - готово. В консольной программе или сервисе я бы использовал _beginthread вместо TThread + WaitForMultipleObjects - оно вернётся когда все потоки завершатся. Кстати еще по поводу использования TThread в С++Builder. В си rtl используется блок данных _thread_data для каждого потока - там хранятся например errno, random seed и еще некоторое количество данных. Этот блок данных выделяется при вызовах _beginthread/_beginthreadex и освобождается в _endthread/_endthreadex. А если поток создан мимо _beginthread/_beginthreadex, то _thread_data автоматически выделится при первом обращении к функции, которой этот блок данных нужен. И никогда не будет освобожден. При использовании TThread _thread_data не выделяется и не освобождается. Если в потоке используются функции, которым этот блок данных нужен, по завершении потока будет утечка памяти. Небольшая, несколько десятков байт. Но при активном создании потоков например в постоянно работающем сервисе - может выйти нехорошо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2014, 12:49 |
|
||
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
Все - данную проблему решил. не подскажете еще вот такой вопрос есть структура Код: plaintext 1. 2. 3. 4. 5. и данная структура будет являться элементов списка TList. Вопрос - если я хочу чтобы сортировка была или по параметру а или по b или по с - в зависимости от моего пожелания. Это надо дополнительно функцию обработки делать - в стандартным TList->Sort такое не сделаешь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2014, 10:17 |
|
||
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
MaxFMв стандартным TList->Sort такое не сделаешь? Код: plaintext 1. читай, что такое TListSortCompare , и будет тебе щастье. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.10.2014, 12:13 |
|
||
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
спасибо, разобрался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2014, 22:30 |
|
||
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
народ, поправьте если я не прав. Список TList- хранит указатели на объекты любого типа. Т.е. он не хранит сами объекты у себя в Items а только указатели на них. поэтому для того чтобы список заполнить надо постоянно создавать новый объект. т.е. я делал вот так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Это получается неправильно так как я в список добавляю один и тот же объект. хотя у меня так все работало без проблем..... Тогда получается надо делать так Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. И если еще раз повторить что элементами списка явл. только указатели то при методе Tlist->Clear удаляются только указатели но сами объекты остаются в памяти. тогда перед очисткой списка надо делать еще что-то типа delete Tlist->items(i); я во всем прав или нет?!!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.10.2014, 23:58 |
|
||
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
прав, по сути Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2014, 00:03 |
|
||
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
MaxFMСписок TList- хранит указатели на объекты любого типа. TList хранит просто указатели. Всё равно на что. Указатели на объекты хранит TObjectList. И он умеет их освобождать при необходимости. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2014, 01:36 |
|
||
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovMaxFMСписок TList- хранит указатели на объекты любого типа. TList хранит просто указатели. Всё равно на что. Указатели на объекты хранит TObjectList. И он умеет их освобождать при необходимости. моими элементами списка являются структуры. Т.е. если использовать TObjectList для данной задачи то дополнительно не надо будет самому удалять эти структуры? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2014, 17:59 |
|
||
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
MaxFMмоими элементами списка являются структуры. Т.е. если использовать TObjectList для данной задачи то дополнительно не надо будет самому удалять эти структуры?Не, TObjectList - только для наследников TObject. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2014, 08:50 |
|
||
|
Вылетает ошибка доступа к памяти borlndmm.dll???
|
|||
|---|---|---|---|
|
#18+
BarloneНе, TObjectList - только для наследников TObject. ну тогда я тут вижу 2 варианта. 1. доп. удаление самих структур из списка и после очищение списка 2. создание нового класса для списка,наследника TList и там тоже самое прописать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.10.2014, 22:15 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38778011&tid=2019270]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 12ms |
| total: | 136ms |

| 0 / 0 |
