HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 05.01.2010, 04:41
Fepsis
Постоянный
Регистрация: 17.09.2008
Сообщений: 562
Провел на форуме:
6962560

Репутация: 536


По умолчанию

Вопрос по потокам:

В скрипте задаётся массив @bas с некоторым количеством элементов...

Создаю процедуру, которая извлекает по одному элементу массива и дописывает его в файл... Сама процедура:
PHP код:
sub gogo
{
   
my ($name) = @_;
   while(
$elm shift(@bas))
   {
      
open(OUT">> $name.txt");
      print 
OUT "$elm\r\n";
      
close(OUT);
   }

Далее создаю несколько потоков, выполняющих функцию gogo и прописываю ждать завершения работы всех потоков...
PHP код:
foreach $ac (@acc)
{
    
push @threadsthreads->create(\&gogo$ac);
}


foreach 
my $thread (@threads
{
    
$thread->join();

Каждый поток создаёт свой файл, куда записывает элементы массива, которые он обработал (извлёк из массива)...
Что я ожидал от работы этого скрипта..?? Ожидал я, что элементы массива @bas будут распределены по файлам потоков.. тоесть первый поток вытащил первый элемент, записал в свой файл, второй поток - второй элемент, и записал уже в свой файл.. и т.д.

А в результате каждый поток пробегает весь массив целиком... Причём я даже пробовал каждому из потоков задать разные задержки.. Почему так происходит, я же извлекаю элементы с помощью shift, который удаляет элемент..?! Как лучше реализовать задуманное..?!
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
[php] Новичкам: задаем вопросы _Great_ PHP 16396 17.06.2010 21:19
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



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


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




ANTICHAT.XYZ