Суббота, 20.04.2024
BBB Ready!
Меню сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » 2014 » Октябрь » 2 » Потоки
17:12
Потоки

Несколько моментов:

1. Добавить библиотеку pthread в линкер

2. Не получилось передать функцию члена класса в pthread_create ( Есть способы это сделать, но сложно и как то не красиво получается )

3. При попытке использовать  std::thread ругается -- данный компилятор не поддерживает что-то

#include <ButtonListener.h>
#include <pthread.h>

#include "BBDirectGPIO.h"
#include "BBConfig.h"

using namespace bbb;

namespace firelib {
    
    ButtonListener::ButtonListener() {
        isRun = true;

        int result = pthread_create(&mainThread, NULL, runListener, (void *)this);
        if( result != 0 ){

        }
    }
    
    ButtonListener::~ButtonListener() {
        isRun = false;
        pthread_join(mainThread, NULL);
    }

    static void * runListener(void *arg) {
     ButtonListener* curListener = reinterpret_cast<ButtonListener*>(arg);
    while( curListener->isRun){
    <**>
    }
}

Просмотров: 380 | Добавил: bobapro | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Поиск
Календарь
«  Октябрь 2014  »
ПнВтСрЧтПтСбВс
  12345
6789101112
13141516171819
20212223242526
2728293031
Архив записей
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright MyCorp © 2024
    Бесплатный хостинг uCoz