Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 13 14 15 16 17 18 19 [20] 21 22   вперед  Ctrl
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Gallemar
Member

Откуда: г.Иркутск
Сообщений: 5082
wadman
Gallemar
Установил Lazarus 2.0, сразу через Сетевой диспетчер пакетов поставил себе Rx, IBX и Zeos.

Можешь проверить на досуге wthread? У меня пока руки не доходят, а интересно... Вдруг что поломали.


Могу. Если уточнишь что именно проверять вообще хорошо будет.
8 фев 19, 09:38    [21804038]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 25056
Gallemar
wadman
пропущено...

Можешь проверить на досуге wthread? У меня пока руки не доходят, а интересно... Вдруг что поломали.


Могу. Если уточнишь что именно проверять вообще хорошо будет.

Пакет wthread в менеджере пакетов есть. Установка, брось поток на форму, добавь таску, на FormCreate дерни её (TTask.Start) и запусти. И всё. Спасибо. :)
8 фев 19, 09:53    [21804056]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Gallemar
Member

Откуда: г.Иркутск
Сообщений: 5082
wadman
добавь таску


как?
8 фев 19, 10:12    [21804077]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 25056
Gallemar
wadman
добавь таску


как?

Правая кнопка на потоке либо дабл клик.
8 фев 19, 10:40    [21804101]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Gallemar
Member

Откуда: г.Иркутск
Сообщений: 5082
Готово, скомпилилось
8 фев 19, 11:07    [21804123]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 25056
Gallemar
Готово, скомпилилось

И выполнилось?
8 фев 19, 11:21    [21804152]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Gallemar
Member

Откуда: г.Иркутск
Сообщений: 5082
wadman, видимый эффект должен был быть?
+
uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, wcthread;

type

  { TForm1 }

  TForm1 = class(TForm)
    Task1: TTask;
    WCThread1: TWCThread;
    procedure FormCreate(Sender: TObject);
  private

  public

  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
begin
            Task1.Start;
end;

end.
         
8 фев 19, 11:50    [21804184]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Kazantsev Alexey
Member

Откуда:
Сообщений: 3356
...аббревиатура WC шикарная, конечно :)
8 фев 19, 12:47    [21804259]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 25056
Kazantsev Alexey
...аббревиатура WC шикарная, конечно :)

Ну кто во что горазд... Компонентная обертка над wthread. :)
Gallemar
видимый эффект должен был быть?

Ничего не взорвалось? Картинка с другого сайта.
Работает значит. Позднее сам более полноценно погоняю. Спасибо!
8 фев 19, 14:08    [21804361]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Gallemar
Member

Откуда: г.Иркутск
Сообщений: 5082
wadman
Ничего не взорвалось? Картинка с другого сайта.
Работает значит. Позднее сам более полноценно погоняю. Спасибо!

Пожалуйста
8 фев 19, 18:11    [21804740]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Gallemar
Member

Откуда: г.Иркутск
Сообщений: 5082
wadman
Спасибо!

Помоги с XML https://www.sql.ru/forum/1308817/pomoshh-s-xml
8 фев 19, 18:39    [21804758]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6058
wadman
Работает значит. Позднее сам более полноценно погоняю. Спасибо!

а у тебя демок в комплекте OPM нету что ли? Заодно, просить провести испытания легче бы было...
9 фев 19, 00:10    [21804998]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6058
обсуждение увел сюда 21805000
9 фев 19, 00:22    [21805001]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6058
"IBX for Lazarus User Guide" для IBX4Lazarus от DedFrend. Может, кому интересно будет...
5 мар 19, 00:29    [21824941]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Фэйтл Эра
Member

Откуда:
Сообщений: 630
Док,

в лазарусовском ibx, датасеты все также закрываются при коммите после изменений?
5 мар 19, 10:06    [21825095]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6058
Фэйтл Эра
в лазарусовском ibx, датасеты все также закрываются при коммите после изменений?

поясни, что ты имеешь ввиду. Кэширование записей?

зы. повторю вопрос за wadman, к чему вопрос?
5 мар 19, 13:36    [21825333]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Фэйтл Эра
Member

Откуда:
Сообщений: 630
Док,

я уже все в документации посмотрел.
5 мар 19, 13:38    [21825338]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
DmSer
Member

Откуда: Пенза
Сообщений: 768
Ужаснулся, насколько менеджер памяти в Лазарусе прожорливее, чем в Delphi.
Сделал простой тест - запускается 200 потоков, в которых выделяется, а затем (через 10 мс) освобождается память до 1000 байт (рандомно).
Смотрю Heap в VMMap:
Delphi: 1040 КБ
Лазарус: 123684 КБ
10 мар 19, 18:21    [21828762]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6058
DmSer,

тестовый проект выложить сможешь?
10 мар 19, 23:21    [21828818]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
DmSer
Member

Откуда: Пенза
Сообщений: 768
Вот что ещё обнаружил: при выделении памяти в Delphi с помощью функции GetMem память выделяется не в Heap, а в Private Data (это строка в программе VMMap). До старта 200 потоков Private Data=1376 КБ, после старта Private Data=6336 КБ (смотрю именно ОЗУ, т.к. столбец "Private"). Т.е. 5 МБ все же выделяется. Но опять же это намного меньше, чем 123 МБ в Лазарусе.

unit UnitTestMM;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Timer1: TTimer;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;


  TMyThread = class(TThread)
  protected
      procedure Execute; override;
  end;

var
  Form1: TForm1;
  ACounter: Integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  I: Integer;
begin
  for I := 1 to 200 do
    TMyThread.Create(False);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Close;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Caption := ACounter.ToString;
end;

{ TMyThread }

procedure TMyThread.Execute;
var
  p: Pointer;
begin
  while not Application.Terminated do
  begin
    GetMem(p, 10000);
    Sleep(10);
    Freemem(p);
    Inc(ACounter);
  end;
end;

end.


В Лазарусе такой же код (GetMem только по-другому вызывается: p := GetMem(1000))
11 мар 19, 00:09    [21828828]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
DmSer
Member

Откуда: Пенза
Сообщений: 768
В общем могу сказать, что цифры для Delphi я привёл приблизительные. Да и программа тестирования много раз менялась, отсюда 10000 вместо 1000. Да и рандом исчез. Если в Дельфи просто запустить 200 потоков, то Private Data=3766 КБ. Если ещё и память выделять с Random(1000), то Private Data=5056 КБ. Если Random(10000), то цифра та же.
11 мар 19, 06:37    [21828853]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Arioch
Member

Откуда:
Сообщений: 10598
DmSer,

если тебе только windows - то наверняка в FPC можно тот же самый FastMM4 подключить, который в новых Delphi

ну либо попробуй в Delphi классику - borlndmm.dll вместо FastMM4 и тогда уже сравнивай
11 мар 19, 18:53    [21829649]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
DmSer
Member

Откуда: Пенза
Сообщений: 768
Arioch
DmSer,

если тебе только windows - то наверняка в FPC можно тот же самый FastMM4 подключить, который в новых Delphi


Не нашел такой возможности. Походу нету.
11 мар 19, 22:13    [21829806]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6058
DmSer
До старта 200 потоков Private Data=1376 КБ, после старта Private Data=6336 КБ (смотрю именно ОЗУ, т.к. столбец "Private"). Т.е. 5 МБ все же выделяется. Но опять же это намного меньше, чем 123 МБ в Лазарусе.

не знаю, в каких попугаях ты мерял, у меня вот, что получилось (lazarus 2.1 r.60617, fpc 3.3.1 r.41632) - скрины из System Explorer и семерочного Диспетчера Задач

+ до старта
Картинка с другого сайта.



Картинка с другого сайта.

+ после старта
Картинка с другого сайта.



Картинка с другого сайта.


Таймер из кода я выкинул, Self.Caption обновляю прямо из потоков (для бенча сойдет Картинка с другого сайта.). Тестовый проект для Лазаря в аттаче

К сообщению приложен файл (project1.zip - 125Kb) cкачать
11 мар 19, 22:27    [21829815]     Ответить | Цитировать Сообщить модератору
 Re: Lazarus: сборки, установка компонент и настройки  [new]
Док
Member

Откуда: Казань
Сообщений: 6058
А вот то же для Rio
+

до старта
Картинка с другого сайта.

после старта
Картинка с другого сайта.

Да уж, Лазарь занимает памяти почти в 10 раз больше Картинка с другого сайта.
11 мар 19, 22:37    [21829822]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 13 14 15 16 17 18 19 [20] 21 22   вперед  Ctrl
Все форумы / Delphi Ответить