Как работает и вообще что такое ExecuteFunc()
|
|
lawson | Дата: Вторник, 15 Февраля 2011, 21:24:13 | Сообщение # 1 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Как работает и вообще что такое ExecuteFunc(). Я пытался его использовать писал в инициализации карты функцию которую мне надо было запустить а получился бред. В гугле гуглил в нете нетил не нашел.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Вторник, 15 Февраля 2011, 21:26:50 |
|
|
|
romaN-1998 | Дата: Вторник, 15 Февраля 2011, 21:52:35 | Сообщение # 2 |
10 уровень
Группа: Проверенные
Сообщений: 1368
Награды: 0
Репутация: 10
Блокировки:
| lawson, execute = исполнять. Думаю, что это что-то типо исполнения функции, но какой.. сам не знаю, потому что, как я вижу, здесь нет аргументов. А собственно зачем тебе такая функция ? если её никто никогда не использовал и всё было норм.. ?
|
|
|
|
lawson | Дата: Вторник, 15 Февраля 2011, 22:56:09 | Сообщение # 3 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (romaN-1998) если её никто никогда не использовал Эхх тебе еще учиться и учиться. ExecuteFunc очень хорошая вещь чтоб вызывать функции у которых нет события или если в действии есть таймер который без события то если вызвать эту функцию с помощью execute то таймер сработает. Также полезна для функций с передачей информацци переменным. Все это я так считаю. Прочитал на xgm про execute но ни че не понял.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
Ajaccio | Дата: Вторник, 15 Февраля 2011, 22:56:54 | Сообщение # 4 |
7 уровень
Группа: Проверенные
Сообщений: 299
Награды: 1
Репутация: 239
Блокировки:
| Эта функция запускает другую функцию в отдельном потоке по её названию. То есть, если мы имеем функцию MyFunc, то мы можем написать call ExecuteFunc("MyFunc"). При этом, в отличии от конструкции call MyFunc(), ExecuteFunc не может принимать параметры. Также функция, откуда запускается MyFunc, не будет ждать завершения работы MyFunc, а пойдет работать дальше (это и значит в новом потоке). Если указанной функции "MyFunc" не существует, то получите Fatal Error.
XOR EAX, EAX MOV EAX, 00H ;; NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.
Сообщение отредактировал Ajaccio - Вторник, 15 Февраля 2011, 22:57:09 |
|
|
|
lawson | Дата: Вторник, 15 Февраля 2011, 23:00:51 | Сообщение # 5 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| так я и так могу запускать функции в триггере call MyFunc() Добавлено (15-02-2011, 23:00) --------------------------------------------- Я просто вижу в некоторых картах ставиться exeuteFunc в инициализации триггера без события.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
Сообщение отредактировал lawson - Вторник, 15 Февраля 2011, 23:01:34 |
|
|
|
PUVer | Дата: Вторник, 15 Февраля 2011, 23:07:25 | Сообщение # 6 |
Сухопутные крысы!
Группа: Модераторы
Сообщений: 4462
Награды: 8
Репутация: 1845
Блокировки:
| Устное предупреждение автора за нарушение правила Название темы должно отражать суть вопроса
|
|
|
|
DragoN | Дата: Вторник, 15 Февраля 2011, 23:11:47 | Сообщение # 7 |
Инквизитор
Группа: Стримеры
Сообщений: 4348
Награды: 7
Репутация: 2776
Блокировки:
| написали же, запускает в новом потоке, в отличии от call MyFunc()
El Psy Congroo
|
|
|
|
Ajaccio | Дата: Вторник, 15 Февраля 2011, 23:12:47 | Сообщение # 8 |
7 уровень
Группа: Проверенные
Сообщений: 299
Награды: 1
Репутация: 239
Блокировки:
| Ну ладно, различие можно увидеть так, допустим есть код: Code function MyFunc takes nothing returns nothing call TriggerSleepAction(99.99) call BJDebugMsg("Просто сообщение") endfunction
function Start takes nothing returns nothing call MyFunc() <------ Сначала запустится и выполнится функция MyFunc. call DestroyTrigger(T) <------ Триггер T уничтожится через 99.99 секунд, по окончанию работы MyFunc и вывода "Просто сообщение". endfunction Также пусть есть такая конструкция: Code function MyFunc takes nothing returns nothing call TriggerSleepAction(99.99) call BJDebugMsg("Просто сообщение") endfunction
function Start takes nothing returns nothing call ExecuteFunc("MyFunc") <------ Мы запускаем функцию MyFunc и идем дальше. call DestroyTrigger(T) <------ Триггер T уничтожится сразу, через 99.99 секунд мы получим сообщение "Просто сообщение". endfunction То есть в 1 случае (через call) мы ждем выполнение (99.99 секунд), во 2 просто запускаем и не ожидая переходим к уничтожению. В инициализации это обычно используется для уменьшения нагрузки и времени, ведь все идет не по очереди, а одновременно.
XOR EAX, EAX MOV EAX, 00H ;; NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO.
|
|
|
|
lawson | Дата: Вторник, 15 Февраля 2011, 23:19:56 | Сообщение # 9 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Спасбо теперь понял.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
Faion | Дата: Суббота, 26 Февраля 2011, 11:26:57 | Сообщение # 10 |
10 уровень
Группа: Проверенные
Сообщений: 1894
Награды: 0
Репутация: 430
Блокировки:
| DragoN, Ajaccio, вы б ему еще потоки начали объяснять... lawson, да нефига ты не понял=) Короче говоря не трогай эту вещь, сломаешь все нафиг, функция не для новичков.
О нас думают плохо лишь те, кто хуже нас, а те кто лучше нас... Им просто не до нас. My Project: Nindogatari MAL
|
|
|
|
lawson | Дата: Суббота, 26 Февраля 2011, 11:51:18 | Сообщение # 11 |
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
| Quote (Faion) Короче говоря не трогай эту вещь Я знаю как она работаетя ее уже использую. Ты меня не дооцениваешь.
Nic nie wiem bo mam chuj. редактирую посты! ВСЕ!
|
|
|
|
SirNikolas | Дата: Суббота, 26 Февраля 2011, 13:07:13 | Сообщение # 12 |
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
| Quote (Faion) вы б ему еще потоки начали объяснять... А мне можете объяснить?
|
|
|
|