Узнать количество запущенных потоков

  • Автор темы Автор темы shtift
  • Дата начала Дата начала

shtift

Client
Регистрация
29.07.2015
Сообщения
148
Реакции
291
Баллы
63
Есть ли метод, который будет возвращать количество запущенных потоков для шаблона в ZennoPoster'e? Ну или просто что потоки работают или ни одного потока не запущено?
 
Есть ли метод, который будет возвращать количество запущенных потоков для шаблона в ZennoPoster'e? Ну или просто что потоки работают или ни одного потока не запущено?
Что-то я такого не могу найти, ни здесь ни тут:
XML:
Развернуть Свернуть Копировать
<Task>
    <Id>ad9be7fa-5c0a-4301-b1c9-e34038a0adb3</Id>
    <Name>Alert</Name>
    <IsNewbie>True</IsNewbie>
    <IsEnable>True</IsEnable>
    <CreateTime>02/01/2016 17:45:00</CreateTime>
    <ExecutionSettings>
        <Id>23bc1d8f-c2ed-43c7-ba48-6c1d878775da</Id>
        <LimitOfThreads>1</LimitOfThreads>
        <MaxAllowOfThreads>0</MaxAllowOfThreads>
        <DoneSuccesfully>4</DoneSuccesfully>
        <DoneAll>1</DoneAll>
        <NumberOfTries>0</NumberOfTries>
        <LastNumberOfTries>1</LastNumberOfTries>
        <Priority>50</Priority>
        <Proxy>DoNotUseProxy</Proxy>
        <Status>Complete</Status>
        <ProxyLabels/>
        <ShouldBeExecutedRandomly>False</ShouldBeExecutedRandomly>
        <GroupLabels>cmd</GroupLabels>
        <GroupStates>Выполнены</GroupStates>
        <MaxNumOfSuccesStop>-1</MaxNumOfSuccesStop>
        <MaxNumOfFailStop>-1</MaxNumOfFailStop>
        <NumOfFailStop>0</NumOfFailStop>
        <ShowTask>False</ShowTask>
    </ExecutionSettings>
    <SchedulerSettings>
        <Id>fdd8d4e4-956a-49af-a90f-b1c89ed70c6f</Id>
        <StartDate>02/01/2016 17:45:00</StartDate>
        <ShedulerOnDate>01/01/0001 00:00:00</ShedulerOnDate>
        <EndDate>02/01/2017 17:45:00</EndDate>
        <RepetitionCount>1</RepetitionCount>
        <ScheduleType>EveryMinutes</ScheduleType>
        <RepeatType>FinishAfter</RepeatType>
        <ActivateTime>01/01/0001 00:00:00</ActivateTime>
        <ActivateWorkTime>01/01/0001 00:00:00</ActivateWorkTime>
        <IsActive>False</IsActive>
        <NumberOfTries>0</NumberOfTries>
        <Minutes>1</Minutes>
        <Days>1</Days>
        <LastScheduleDate>01/01/0001 00:00:00</LastScheduleDate>
        <NextScheduleDate>null</NextScheduleDate>
        <IsClearSucces>False</IsClearSucces>
    </SchedulerSettings>
    <TriggerSettings>
        <Id>a8232be5-d916-4d41-b59c-9b194300ee3c</Id>
        <CheckFileExistanse>False</CheckFileExistanse>
        <CheckFilePath/>
        <RemoveCheckFile>True</RemoveCheckFile>
        <NumberOfTries>0</NumberOfTries>
        <IsClearSucces>False</IsClearSucces>
    </TriggerSettings>
    <Project>
        <ProjectFileLocation>C:\alert.xmlz</ProjectFileLocation>
        <ProjectType>Assembly</ProjectType>
    </Project>
</Task>
Подождите @rostonix
 
@rostonix, есть ли метод, который возвращает количество запущенных потоков для шаблона в ZennoPoster'e? Ну или просто что потоки работают или ни одного потока не запущено?
 
@rostonix, есть ли метод, который возвращает количество запущенных потоков для шаблона в ZennoPoster'e? Ну или просто что потоки работают или ни одного потока не запущено?
Выше XML файлик, там есть <Status>Complete</Status> в данном случае видно что шаблон завершён, в других случаях там будет другая информация.
 
  • Спасибо
Реакции: shtift
Выше XML файлик, там есть <Status>Complete</Status> в данном случае видно что шаблон завершён, в других случаях там будет другая информация.
Где располагаются эти логи?

@rostonix если есть возможность отследить состояние встроенными методами, отпишись, пожалуйста.
 
Где располагаются эти логи?

@rostonix если есть возможность отследить состояние встроенными методами, отпишись, пожалуйста.
Это не логи а данные текущего добавленного в ZP шаблона, получить их можно вот так например (ветка со статусом)
C#:
Развернуть Свернуть Копировать
string status = string.Empty;
for(int a = 0; a < 10; a++)
   {
   var yourname = "reger_1";//имя шаблона
   var tasks = ZennoPoster.TasksList;
   foreach(var task in tasks)
   {
     var doc = new System.Xml.XmlDocument();
     doc.LoadXml("<Task>" + task + "</Task>");
     string name;
     var nameNode = doc.SelectSingleNode("Task/Name");
     if(nameNode != null && nameNode.InnerText.Equals(yourname))
     {
    name = nameNode.InnerXml;
       //ZennoPoster.AddTries(name, 1);
         if (Global.Variables.IsProjectMaker) if (!Global.Variables.IsDebugMode) break;
         status = doc.SelectSingleNode("Task/ExecutionSettings/Status").InnerText;
         //Complete
         return status;

     }
   }
}
За код благодарим @rostonix
 
питаюсь выполнить код вылетает ошибка

Компиляция кода Ошибка в действии "CS0234" "The type or namespace name 'XmlDocument' does not exist in the namespace 'System.Xml' (are you missing an assembly reference?)".
 
разобрался спасибо
 
Это не логи а данные текущего добавленного в ZP шаблона, получить их можно вот так например (ветка со статусом)
C#:
Развернуть Свернуть Копировать
string status = string.Empty;
for(int a = 0; a < 10; a++)
   {
   var yourname = "reger_1";//имя шаблона
   var tasks = ZennoPoster.TasksList;
   foreach(var task in tasks)
   {
     var doc = new System.Xml.XmlDocument();
     doc.LoadXml("<Task>" + task + "</Task>");
     string name;
     var nameNode = doc.SelectSingleNode("Task/Name");
     if(nameNode != null && nameNode.InnerText.Equals(yourname))
     {
    name = nameNode.InnerXml;
       //ZennoPoster.AddTries(name, 1);
         if (Global.Variables.IsProjectMaker) if (!Global.Variables.IsDebugMode) break;
         status = doc.SelectSingleNode("Task/ExecutionSettings/Status").InnerText;
         //Complete
         return status;

     }
   }
}
За код благодарим @rostonix
Не понял я в чём смысл этого кода - он при запущенном не запущенном шаблоне показывает одно - ок. Как проверять тогда?
 
  • Спасибо
Реакции: Rimen
Не понял я в чём смысл этого кода - он при запущенном не запущенном шаблоне показывает одно - ок. Как проверять тогда?
Вы уверены, что правильно прописали имя шаблона в переменной yourname? Перепроверьте, так как у меня код отрабатывает нормально, но стоит сделать ошибку в названии шаблона и код возвращает ок, как Вы и говорите.
В этот код надо бы добавить обработку несоответствия условию и подобных вопросов станет меньше
C#:
Развернуть Свернуть Копировать
string status = string.Empty;
for(int a = 0; a < 10; a++)
   {
   var yourname = "reger_1";//имя шаблона
   var tasks = ZennoPoster.TasksList;
   foreach(var task in tasks)
   {
     var doc = new System.Xml.XmlDocument();
     doc.LoadXml("<Task>" + task + "</Task>");
     string name;
     var nameNode = doc.SelectSingleNode("Task/Name");
     if(nameNode != null && nameNode.InnerText.Equals(yourname))// если нашли шаблон
     {
    name = nameNode.InnerXml;
       //ZennoPoster.AddTries(name, 1);
         if (Global.Variables.IsProjectMaker) if (!Global.Variables.IsDebugMode) break;
         status = doc.SelectSingleNode("Task/ExecutionSettings/Status").InnerText;
         //Complete
         return status;

     }
     else throw new Exception("Шаблона с таким именем нет.");
   }
}
 
Последнее редактирование:
  • Спасибо
Реакции: SHILY и avtostopshik
  • Спасибо
Реакции: Rimen, SHILY и The_vAe
Есть аналогичный код для ZennoDroid?
 

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