Думал сперва, что все замечательно, ну как бы я все синхронизировал, но оказывается не так это. Код: Это вот из потока.
Code
procedure rega.Execute;
var regagl:tstringlist;
regaglo,cap_sid2, put, idcap, cap, cooc, pass1, zava, putava, hash, sex :string;
ran:integer;
begin
while Work do
begin
randomize;
Synchronize(s4et4ik);
if Work then
begin
...
Вот это код счетчика, которой по идее должен выполнятся лишь одним потоком одновременно, остальные должны ждать по идее.
Code
procedure rega.s4et4ik;
begin
Inc(acc);
if acc<form1.Memo1.Lines.Count then i:=Acc else Work:=false;
end;
Далее в коде потока Execute идет:
Code
...
Synchronize(memoregacc);
form1.idhttp1 := TIDHttp.Create;
gl:=form1.idhttp1.Get('http://vkontakte.ru/');
form1.idhttp1.Free;
где memoregacc это:
Code
procedure rega.memoregacc;
begin
form1.Memolog.lines.add('Регистрируем акк '+mails[i]);
end;
Так вот, memoregacc, в memolog выводится один и тот же mail(хотя в мемо1 я ввожу 4 разных хначения) столько раз, сколько я создаю потоков, и этот мэил который выводится несколько раз, в мемо1 стоит в такой строке, номер которой соответствует кол-ву потоков. Помогите решить траблу.