
13.12.2007, 02:19
|
|
Постоянный
Регистрация: 06.06.2006
Сообщений: 515
С нами:
10489346
Репутация:
963
|
|
Сообщение от genom--
насчет threads + tk =) - а почему бы и нет - хоть тк и является unthreadable - типо не потокиируемый(если не ошибась)
Статус Тк не позволяет (при стандартной связке Tk+threads) внедрять многопоточность только по отношению к себе. Т.е. разработка "нормального" гуя, где элементы гуя контролируются одними потоками, а работа скрипта выполняется другими, в данном случае не возможна.
Я хотел было заморочиться по этому поводу, в мыслях было написать многопоточную обертку для Tk, но мои телодвижения в данном направлении окончились после этих строк:
Код:
#!perl
use strict;
use warnings;
use Tk;
use threads;
my($MW);
threads -> create(\&StartGUI, 'Tk & threads', [640, 480], [0, 0]) -> detach;
sub StartGUI
{
my($title, $geometry, $resizable) = @_;
$MW = MainWindow -> new(-title => $title);
$MW -> geometry($geometry -> [0] . 'x' . $geometry -> [1]);
$MW -> resizable($resizable -> [0], $resizable -> [1]);
MainLoop;
}
Без исправлений на уровне XS, мне кажется, тут ничего уже не попишешь.
|
|
|