Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - darkyn

Страницы: [1]
1
Perl / потоки, и shared хеши
« : 13 Октября 2006, 11:33:48 »
немного продолжая тему:

при попытке:
...
$constructor = \\&some_function ;
$MODULES{$name}{subs}{constructor} = $constructor ;
...
^^^ вылетает с ошибкой \'Invalid value for shared scalar\'

[?]  возможно ли это? и каким образом можно положить в shared переменную ссылку на функцию?

2
Perl / потоки, и shared хеши
« : 12 Октября 2006, 12:10:18 »
вот так всегда. спешишь, спешишь... а всё лечит rtfm ; )

3
Perl / потоки, и shared хеши
« : 11 Октября 2006, 17:25:49 »
ошибся со скобками в первом посте. у меня в коде так и прописано. вот только пока хеш %MODULES не является shared всё нормально присваевается, когда объявлю его как :shared сразу начинает ругаться той же ошибкой "Invalid value for shared scalar"

сделал маленький тест:

#!/usr/bin/perl -w

use strict;
use Data::Dumper;
use threads;
use threads::shared;

my %MODULES :shared = () ;

my $name = \'test_key\';
$MODULES{$name } = {
     \'subs\' => {c=>\'\',d=>\'\',e=>\'\'},
     \'info\' => {},
     \'messages\' => [] };

print "\\r\\n";
print Dumper(\\%MODULES);
print "\\r\\n";

как же всё это заставить работать?) и в чём именно проблема?)

4
Perl / потоки, и shared хеши
« : 11 Октября 2006, 16:17:26 »
появилась необходимость хранить множество информации о каждом работающем потоке в общем хеше.

что бы было понятней сразу часть кода:
my %MODULES :shared = () ;

потом в определенный момент хеш заполняется параметрами
$MODULES{$mod_name} = (
   \'subs\' => {constructor=>\'\',destructor=>\'\',entrypoint=>\'\'},
   \'info\' => {}, \'messages\' => [] );

здесь-то и появляется ошибка "Invalid value for shared scalar" =(
это какие-то ограничения на shared переменные?
как правильно реализовать наполнение хеша $MODULES?

5
Perl / Perl и Потоки (Win32)
« : 09 Октября 2006, 16:12:14 »
сорри, вопрос закрыт
обновил perl и библиотеки всё начало работать.
появилась иная проблема.
под win32 не хочет работать $thread->detach();
кто-нибудь знает, где почитать о функциональных различиях работы threads на различных платформах??

6
Perl / Perl и Потоки (Win32)
« : 09 Октября 2006, 16:01:06 »
=0)
хочется, напротив, отказать от виртуальной машинки или перезагрузки в unix. используется отлаженая и настроеная среда разработки, которую нечем заменить в unix\'e =0)

7
Perl / Perl и Потоки (Win32)
« : 09 Октября 2006, 15:37:56 »
Здравствуйте.
Каким образом можно заставить работать многопоточное приложение под Win32 (использую ActivePerl порт).

При попытке запуска в "окошках" постояно выдаёт сообщение о том что perl собран под ithreads, на этом всё надежды крушатся =(

Само приложение, многопоточный сервер, разрабатывается в среде unix, там-то всё работает на !ура!, но постоянно возникает необходимость брать работу домой.

В сети однозначного ответа найти не могу( очень нужно!
как справится?

Страницы: [1]