HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #4811  
Старый 05.11.2009, 13:49
transserg
Участник форума
Регистрация: 02.07.2008
Сообщений: 132
С нами: 9399214

Репутация: 52
По умолчанию

2 Пуховой
Код:
http.ReadTimeout := 30000;
30 секунд ждать не много? если у тебя 1000 итераций то уйдет 60 часов + задержки таймера.

у тебя задержка в такймере сколько стоит?
Зависает всмысле форма не обновляется или программа ничего не делает?
если форма то добавть в цикл потока или той функции котороая больше всего времени отнимает
Application.ProcessMessage;
 
Ответить с цитированием

  #4812  
Старый 05.11.2009, 14:13
Пуховой
Banned
Регистрация: 25.11.2007
Сообщений: 62
С нами: 9715564

Репутация: 89
По умолчанию

transserg, задержка в таймере - 10 минут. Т.е. - каждые 10 минут обновляется список прокси-серверов, но дело не в этом. Критическая секция используется только при обновлении самого списка, не более, а на это уходит дай бог 1 мсек.

Сл. эксперимент. Тело таймера:
Цитата:
procedure TForm1.Timer3Timer (Sender: TObject);
begin
CriticalSection.Enter;
proxys.Clear;
proxys.Add ('12345');
CriticalSection.Leave;
end;
При использовании критической секции другим потоком, в момент обращения таймера к ней программа также виснет (приостанавливают работу потоки, перестает отвечать главная форма).

Чую, надо ковырять глубже, интерес разобрал
 
Ответить с цитированием

  #4813  
Старый 05.11.2009, 14:28
transserg
Участник форума
Регистрация: 02.07.2008
Сообщений: 132
С нами: 9399214

Репутация: 52
По умолчанию

Пуховой
для того чтоб форма не подвисала используй Application.ProcessMessage; или как варинат преостанавливай потоки на время обновления списка проксей
 
Ответить с цитированием

  #4814  
Старый 05.11.2009, 14:38
Пуховой
Banned
Регистрация: 25.11.2007
Сообщений: 62
С нами: 9715564

Репутация: 89
По умолчанию

transserg, application.processmessages здесь не поможет.

Известно одно - таймер тыкается в крит. секцию и все идет "не по плану". Буду копать глубже.

Спасибо за ответы
 
Ответить с цитированием

  #4815  
Старый 05.11.2009, 22:39
Adekvatnyj
Участник форума
Регистрация: 28.10.2009
Сообщений: 129
С нами: 8703313

Репутация: 67
По умолчанию

При компиляции программы вываливается "Access violation...". Появляется дебаггер с ассамблерным кодом. Работаю на дельфи 7
 
Ответить с цитированием

  #4816  
Старый 05.11.2009, 22:48
transserg
Участник форума
Регистрация: 02.07.2008
Сообщений: 132
С нами: 9399214

Репутация: 52
По умолчанию

Adekvatnyj зедсь есть экстрасенсы? =) код выложи
или хотяб часть на которую грешиш
 
Ответить с цитированием

  #4817  
Старый 05.11.2009, 23:25
Adekvatnyj
Участник форума
Регистрация: 28.10.2009
Сообщений: 129
С нами: 8703313

Репутация: 67
По умолчанию

При любом коде, скрин:
_http://s19.radikal.ru/i192/0911/29/c04d62ddc85e.png
 
Ответить с цитированием

  #4818  
Старый 05.11.2009, 23:32
transserg
Участник форума
Регистрация: 02.07.2008
Сообщений: 132
С нами: 9399214

Репутация: 52
По умолчанию

Adekvatnyj я имел ввиду код программы а не отладчик
 
Ответить с цитированием

  #4819  
Старый 05.11.2009, 23:35
Adekvatnyj
Участник форума
Регистрация: 28.10.2009
Сообщений: 129
С нами: 8703313

Репутация: 67
По умолчанию

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Edit1: TEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage('Привет, ' + Edit1.Text + '!');
end;

end.
Допотопные коды. С учебника.
 
Ответить с цитированием

  #4820  
Старый 06.11.2009, 00:53
transserg
Участник форума
Регистрация: 02.07.2008
Сообщений: 132
С нами: 9399214

Репутация: 52
По умолчанию

Adekvatnyj попробуй переустановить делфи или поставть Codegear какой нить, скорее всего проблемы в среде
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Wi-Fi, BT] Задай вопрос - получи ответ! Alexsize Беспроводные технологии/Wi-Fi/Wardriving 2570 09.06.2026 16:21
[jQuery] - Задай вопрос, получи ответ Isis PHP 62 25.12.2009 03:25



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.