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

specialist

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

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

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

zarufakis

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

alex1988

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

backoff

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

Dr.Pipetka

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

backoff

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

Sergodjan

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

backoff

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

Dr.Pipetka

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

Sergodjan

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

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 438
Благодарностей
9 135
Баллы
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 438
Благодарностей
9 135
Баллы
113
Запишу в пожелалки, программисты посмотрят что с этим можно сделать.
 
  • Спасибо
Реакции: Dr.Pipetka и specialist

che100

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

specialist

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

Yuriy Zymlex

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

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