purebasic.info

PureBasic forum
Текущее время: Сб июл 21, 2018 7:09 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Оперативная память [MessageRequester]
СообщениеДобавлено: Вт мар 27, 2018 6:02 am 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Я заметил что, MessageRequester забивает оперативную память, если например послать 5-10 сообщений. Можно ли как-то высвобождать память после закрытия самого сообщения?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Оперативная память [MessageRequester]
СообщениеДобавлено: Вт мар 27, 2018 6:56 am 
Не в сети
профессор

Зарегистрирован: Чт сен 22, 2011 6:21 pm
Сообщений: 231
Благодарил (а): 31 раз.
Поблагодарили: 22 раз.
Пункты репутации: 0
Не подтверждается (PB5.46x32)
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
EnableExplicit
#TITLE$ = "test"
;поток закрывающий все открытые окна с данным заголовком
Procedure CloseMsgReqThr(*r)
  Protected hwnd
  Repeat
    hwnd = FindWindow_(0,#TITLE$)
    If hwnd
      SendMessage_(hwnd, #WM_CLOSE, 0, 0)
    EndIf
    Delay(10)
  ForEver
EndProcedure
 
CreateThread(@CloseMsgReqThr(),0)
 
Repeat
  MessageRequester(#TITLE$,#TITLE$)
  Delay(100)
ForEver



Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Оперативная память [MessageRequester]
СообщениеДобавлено: Вт мар 27, 2018 10:08 am 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Kuzmat писал(а):
Не подтверждается (PB5.46x32)
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
EnableExplicit
#TITLE$ = "test"
;поток закрывающий все открытые окна с данным заголовком
Procedure CloseMsgReqThr(*r)
  Protected hwnd
  Repeat
    hwnd = FindWindow_(0,#TITLE$)
    If hwnd
      SendMessage_(hwnd, #WM_CLOSE, 0, 0)
    EndIf
    Delay(10)
  ForEver
EndProcedure
 
CreateThread(@CloseMsgReqThr(),0)
 
Repeat
  MessageRequester(#TITLE$,#TITLE$)
  Delay(100)
ForEver



Походу у меня код аномальный, и в правду. Потестировал на чистом и заполнение оперативной памяти не наблюдается.
Нашел в общем причину, в этом : http://www.purebasic.fr/english/viewtopic.php?t=66256 где то память не высвобождается.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: alone67 и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB