Перейти к содержанию
    

scmRTOS. Указатель на процесс. Возможно такое?

typedef OS::process<OS::pr0, 160> TProc1;
OS::TBaseProcess * pproc = &Proc1;
.  .  .  
.  .  .  

pproc->sleep();
pproc->wake_up();

Изменено пользователем nanorobot

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не вижу препятствий :)

 

Вот, например, код, который проходится по всем процессам и выдаёт по ним статистику (OS::get_proc() как раз возвращает указатель на TBaseProcess) :

    for(uint_fast8_t i = 0; i < OS::PROCESS_COUNT; ++i)
    {
        uint32_t cpu = profiler.get_result(i)/10;
        stream    << priorities[i] << '\t' << OS::get_proc(i)->name() << '\t'
            << OS::get_proc(i)->stack_slack() * sizeof(stack_item_t)  << '\t'
            << cpu / 10 << '.'<< cpu % 10 <<"\r\n";
    }

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...