Кнопка прерывания в Мейкере

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
В ZennoPoster возможно принудительно завершить процесс.

В ProjectMaker - доступна только остановка, при ошибке в логике работы, например эмуляция ввода огромного текста, длиться очень долго, пока задание не будет завершено.

Хотелось бы кнопку прерывания задачи, а не остановки.
 

zarufakis

Client
Регистрация
22.03.2019
Сообщения
1 743
Благодарностей
1 137
Баллы
113
Да, былоа бы полезна такая кнопка.
Иной раз повиснет кубик, а ты сидишь как дурак минут 10 и ждешь. когда он развиснет.
 

alex1988

Client
Регистрация
13.07.2014
Сообщения
381
Благодарностей
158
Баллы
43
Да тоже поддерживаю - нужная функция
 

backoff

Client
Регистрация
20.04.2015
Сообщения
6 095
Благодарностей
6 496
Баллы
113
просил об этом еще года 2 назад )
ждем дальше :-)
 

Dr.Pipetka

Client
Регистрация
12.12.2017
Сообщения
1 315
Благодарностей
869
Баллы
113
Вообще странно что нету такой кнопки.
 

backoff

Client
Регистрация
20.04.2015
Сообщения
6 095
Благодарностей
6 496
Баллы
113

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 564
Благодарностей
9 180
Баллы
113
например эмуляция ввода огромного текста, длиться очень долго, пока задание не будет завершено.
В ЗП, как и в ПМ, тоже нет возможности прервать эмулированный ввод текста.
Также нет возможности прервать выполнение C#-кода, пока тот не отработает.
Все остальное можно остановить сущ. кнопкой Стоп, именно остановить, т.е. действие отработает и выполнение остановится. В ЗП кн. Стоп по другому алгоритму действует - дает возможность завершится выполнению полностью и потом происходит выключение добавления попыток выполнения. А кн. Прервать в ЗП действует по алгоритму кн. Стоп в ПМ.
 
  • Спасибо
Реакции: Yuriy Zymlex

backoff

Client
Регистрация
20.04.2015
Сообщения
6 095
Благодарностей
6 496
Баллы
113
а как же кнопка "прервать" в ЗП?
или она отрабатывает шарп и прерывает? тогда зачем она, если есть кнопка стоп
 

Dr.Pipetka

Client
Регистрация
12.12.2017
Сообщения
1 315
Благодарностей
869
Баллы
113
В ЗП, как и в ПМ, тоже нет возможности прервать эмулированный ввод текста.
Также нет возможности прервать выполнение C#-кода, пока тот не отработает.
Все остальное можно остановить сущ. кнопкой Стоп, именно остановить, т.е. действие отработает и выполнение остановится. В ЗП кн. Стоп по другому алгоритму действует - дает возможность завершится выполнению полностью и потом происходит выключение добавления попыток выполнения. А кн. Прервать в ЗП действует по алгоритму кн. Стоп в ПМ.
Народ жаждет другого)))
если есть кнопка стоп
После нажатия (стоп) текущие шаблоны доработают до конца. Прервать - завершатся перед следующим кубиком.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 564
Благодарностей
9 180
Баллы
113
а как же кнопка "прервать" в ЗП?
или она отрабатывает шарп и прерывает? тогда зачем она, если есть кнопка стоп
Кн. Стоп в ЗП дает доработать шаблону до конца, кн. Прервать в ЗП аналогична кн. Стоп в ПМ,
дает отработать текущему экшену и останавливает выполнение.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 564
Благодарностей
9 180
Баллы
113

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
Но такое вряд ли осуществимо.
Во время ввода ничто не мешает делать проверку на кнопку стоп, задержка достаточна, для проверки тригера.
c# - сложнее, но тоже решаемо, например через выгрузку домена

C#:
public class TestClass : MarshalByRefObject
{
    public void SomeMethod()
    {

            while (true)
            {
                try
                {
                    Thread.Sleep(1000);
                    Console.WriteLine("1");
                }
                catch (Exception e)
                {
                    try
                    {
                        Thread.ResetAbort();
                    }
                    catch (Exception exception)
                    {
                        while (true)
                        {
                            Thread.Sleep(1000);
                            Console.WriteLine("2");
                        }
                    }
                }
            }
    }
}
class Program
{

    static void Main(string[] args)
    {
        AppDomain domain = AppDomain.CreateDomain("MyDomain");
        var t=(TestClass)domain.CreateInstanceAndUnwrap(typeof(TestClass).Assembly.FullName, typeof(TestClass).FullName);
        Task.Run(() => t.SomeMethod());
        Thread.Sleep(2000);
        AppDomain.Unload(domain);
        Console.ReadKey();
    }
}
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 564
Благодарностей
9 180
Баллы
113
Запишу в пожелалки, программисты посмотрят что с этим можно сделать.
 
  • Спасибо
Реакции: Dr.Pipetka и specialist

che100

Client
Регистрация
18.04.2017
Сообщения
808
Благодарностей
503
Баллы
93

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63

Yuriy Zymlex

Moderator
Команда форума
Регистрация
24.10.2016
Сообщения
6 529
Благодарностей
3 375
Баллы
113

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)