std::bind i this

std::bind i this
0
Kopiuj
 
1) 
    m_threadPool.push_back(std::thread(std::bind(&ThreadPool::run, this)));
    ThreadPool::run() {
        this->to ten this ?!
    }

2) 
   m_threadPool.push_back(std::thread(std::bind(&ThreadPool::run, this, std::placeholder::_1)));
   ThreadPool::run(ThreadPool* threadpool) {
        threadpool->to tutaj jest ten this ?!
    }

3) 
   m_threadPool.push_back(std::thread(std::bind(&ThreadPool::run, std::placeholder::_1)));
   ThreadPool::run(ThreadPool* threadpool) {
       threadpool->to tutaj jest ten this ?!
   }

Który z powyższych kodów pozwoli mi przekazac do watku wykonujacego metode run wskaznika this z klasy ThreadPool takiego by miec dostep do wszystkich zasobow tej klasy, np. kolejki zadan dla watkow, conditiona variabli, mutexow itp ?

0

Do zamkniecia, przypadek 1 ma this o tym samym adresie co ThreadPool

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.