Size: a a a

IT KPI C/C++ ХВ (не UB)

2021 February 25

JC

Julian =) Coffee in IT KPI C/C++ ХВ (не UB)
Но для чего-то простого юзать можно
источник

W

We all wanna be some... in IT KPI C/C++ ХВ (не UB)
Доров
Чи можна якось без м'ютексів атомарно виконати наступний код?
atomic_int64_t idx = 0;
//some code
//in thread
int temp_idx = idx++;
источник

W

We all wanna be some... in IT KPI C/C++ ХВ (не UB)
idx впринципі може бути любого типу, який забезпечує цілочисельні операції
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
так ты ж как раз используешь атомик, который и даёт возможность без мютексов обойтись
источник

AT

Art Teatr in IT KPI C/C++ ХВ (не UB)
или атомики
или синхронизация
Или алгоритм который гарантирует отсутствие коллизии (точно не простой инкремент)
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
We all wanna be somebody
Доров
Чи можна якось без м'ютексів атомарно виконати наступний код?
atomic_int64_t idx = 0;
//some code
//in thread
int temp_idx = idx++;
зависит от платформы
источник

W

We all wanna be some... in IT KPI C/C++ ХВ (не UB)
Ruslan Neshta
зависит от платформы
вінда 10 х64, проц теж під 64
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
сколько потоков у тебя? тут код для одного
источник

W

We all wanna be some... in IT KPI C/C++ ХВ (не UB)
зараз 2
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
ну так пиши атомик и не выебывайся
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
там интел и амд уже всё продумали
источник

VD

Vlad Doc in IT KPI C/C++ ХВ (не UB)
We all wanna be somebody
Доров
Чи можна якось без м'ютексів атомарно виконати наступний код?
atomic_int64_t idx = 0;
//some code
//in thread
int temp_idx = idx++;
std::atomic<int64_t>
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
если модель памяти позволяет чето там соптимизировать под капотом оно будет соптимизировано
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
и тебе об этом знать не нужно
источник

W

We all wanna be some... in IT KPI C/C++ ХВ (не UB)
Ruslan Neshta
ну так пиши атомик и не выебывайся
хош сказати, не станеться такого, що воно спочатку в кожному з потоків зробить інкремент, а потім в кожному з потоків буде робити присвоєння?
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
щас не понял ничего
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
у тебя idx будет в разных потоках меняться, так?
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
госпади что ты так долго пишешь там?
источник

RN

Ruslan Neshta in IT KPI C/C++ ХВ (не UB)
да илм нет
источник

VD

Vlad Doc in IT KPI C/C++ ХВ (не UB)
Ruslan Neshta
госпади что ты так долго пишешь там?
Дедлок словил)))
источник