-
Data: 2017-08-14 15:10:41
Temat: Re: Automatic Reference Counting
Od: Borneq <b...@a...hidden.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 14.08.2017 o 10:31, M.M. pisze:
> Widzę że coś jak QMutexLocekr w Qt, tylko że mutex locker samo
> odblokowuje mutex a nie zwalnia pamięć :)
> http://doc.qt.io/qt-4.8/qmutexlocker.html
W poniższym przykładzie listy cyklicznej jest coś źle.
Shared nie powinien zwalniać, a zwalnia wszystkie z wyjątkiem jednego i
to przed opuszczeniem test(),
zamiana na weak skutkuje tym że jest na zmianę tworzenie i zaraz
zwalnianie. Coś nie tak, jak w teorii.
#include <memory>
#include <iostream>
using namespace std;
class Node
{
private:
int n;
public:
Node(int n): n(n)
{
cout << "Constructor Node is called " << n <<endl;
}
~Node()
{
cout << "Destructor Node is called " << n << endl;
}
shared_ptr<Node> prev;
};
int test()
{
shared_ptr<Node> node = shared_ptr<Node>(new Node(0));
shared_ptr<Node> first = node;
for (int i = 1; i < 5; i++)
{
shared_ptr<Node> prev = node;
node = shared_ptr<Node>(new Node(i));
node->prev = prev;
}
node->prev = node;
printf("====\n");
return 0;
}
int main()
{
test();
return 0;
}
Następne wpisy z tego wątku
- 14.08.17 15:17 Borneq
- 14.08.17 15:26 Borneq
- 14.08.17 15:36 M.M.
- 16.08.17 22:16 AK
- 16.08.17 22:17 AK
- 16.08.17 23:31 M.M.
- 17.08.17 18:01 fir
- 17.08.17 23:56 Wojciech Muła
- 18.08.17 07:09 Borneq
- 18.08.17 07:50 AK
- 18.08.17 07:54 AK
- 18.08.17 07:58 AK
- 18.08.17 08:01 AK
- 18.08.17 09:20 fir
- 18.08.17 10:42 bartekltg
Najnowsze wątki z tej grupy
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
Najnowsze wątki
- 2025-05-03 gazowe kuchnie są znacznie bardziej szkodliwe dla zdrowia, niż dotychczas sądzono
- 2025-05-03 Czyli jednak elektryki są TANIE i powszechnie dostępne dla obywateli
- 2025-05-03 Elektryki do Morskiego Oka do utylizacji
- 2025-05-03 Crash testy na publicznej drodze - 4 BMW zderzone
- 2025-05-03 pojebane Google
- 2025-05-03 Brednie w wiki - hasło Dehomag
- 2025-05-03 gazowe kuchnie są znacznie bardziej szkodliwe dla zdrowia, niż dotychczas sądzono
- 2025-05-03 Chiny => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu <
- 2025-05-03 Gdańsk => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-05-03 Warszawa => Frontend Developer (Angular13+) <=
- 2025-05-02 Gliwice => Business Development Manager - Network and Network Security
- 2025-05-02 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-05-02 Polska => Senior Key Account Manager <=
- 2025-05-02 Warszawa => Senior Programmer C <=
- 2025-05-02 Gdańsk => Team Lead Data Engineer (Snowflake) <=