• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pobieranie wartości z innego wątku

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
0 głosów
272 wizyt
pytanie zadane 1 lipca 2015 w C i C++ przez Pascal Bywalec (2,720 p.)
edycja 2 lipca 2015 przez Pascal
Tak jak w tytule jak to zrobić ?

Oczywiście żem zapomniał dla klasy thread

1 odpowiedź

+1 głos
odpowiedź 2 lipca 2015 przez Pan Kulomb Pasjonat (18,630 p.)
wybrane 12 lipca 2015 przez Pascal
 
Najlepsza
Może modyfikuj w wątku wartość wskaźnika?
komentarz 3 lipca 2015 przez Pascal Bywalec (2,720 p.)
to ma sens :)
komentarz 12 lipca 2015 przez Pascal Bywalec (2,720 p.)

To co mówiłeś to prawda ale trzabyło to zrobić ciut bardziej, elegancko :)

http://stackoverflow.com/questions/7686939/c-simple-return-value-from-stdthread

#include <thread>
#include <future>

void func(std::promise<int> && p) {
    p.set_value(1);
}

int main()
{
    std::promise<int> p;
    auto f = p.get_future();
    std::thread t(&func, std::move(p));
    t.join();
    int i = f.get();
}

i w Visual Studio to nie działa, ale działa pod postacią:

#include <thread>
#include <future>

void func(std::promise<int> * p) {
    p.set_value(1);
}

int main()
{
    std::promise<int> p;
    auto f = p.get_future();
    std::thread t(&func, &p);
    t.join();
    int i = f.get();
}

 

Podobne pytania

0 głosów
2 odpowiedzi 347 wizyt
pytanie zadane 11 listopada 2018 w C# przez Ditrix Mądrala (5,650 p.)
0 głosów
1 odpowiedź 185 wizyt
pytanie zadane 1 sierpnia 2016 w C# przez jankustosz1 Nałogowiec (36,960 p.)
0 głosów
1 odpowiedź 227 wizyt

93,439 zapytań

142,431 odpowiedzi

322,676 komentarzy

62,802 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

...