- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
#include <iostream>
#include <vector>
#include <thread>
int f()
{
static int i = 0;
synchronized { // begin synchronized block
std::cout << i << " -> ";
++i; // each call to f() obtains a unique value of i
std::cout << i << '\n';
return i; // end synchronized block
}
}
int main()
{
std::vector<std::thread> v(10);
for(auto& t: v)
t = std::thread([]{ for(int n = 0; n < 10; ++n) f(); });
for(auto& t: v)
t.join();
}
0 -> 1
1 -> 2
2 -> 3
...
99 -> 100
https://en.cppreference.com/w/cpp/language/transactional_memory
YpaHeLI_ 27.04.2022 11:44 # 0
Ну, синтактический сахар.
kcalbCube 27.04.2022 14:21 # 0
j123123 27.04.2022 14:10 # +1
Почему б крестоговностандартизатором не использовать говнонеймспейс для такого говна, ну типа чтобы было std::special_shit::synchronized {какая-то там хуйня} ?
guest6 27.04.2022 14:15 # 0
Soul_re@ver 27.04.2022 14:23 # +2
j123123 27.04.2022 14:27 # 0
Хуй там. Будут называть "aaaa". Или "a1", "a2", "a3" ... или с какими-то говноподчеркиваниями
Soul_re@ver 27.04.2022 14:29 # 0
А тут компилятор подползает сзади и напоминает, что в некоторых случаях подчёркивания в именах — UB, а при UB может и жёсткий диск отформатироваться.
j123123 27.04.2022 14:32 # 0
3.14159265 03.05.2022 04:30 # 0
А потом прочитал внимательнее.
> ключевые слова a, b, c, ... , i,
И как теперь счётчики писать, когда не будет идиоматичного i++?
Kypumca 03.05.2022 06:20 # 0
3.14159265 03.05.2022 07:11 # 0
AbstractCounterFactory
Fike 03.05.2022 22:59 # 0
guest6 27.04.2022 14:36 # 0
Двадцать лет назад они добавили бы `[@]` или `(=:)=`
j123123 27.04.2022 14:40 # 0
Soul_re@ver 27.04.2022 14:41 # 0
j123123 27.04.2022 14:49 # +1
j123123 27.04.2022 14:43 # +2
Soul_re@ver 27.04.2022 15:19 # 0
guest6 27.04.2022 15:22 # 0
3.14159265 03.05.2022 04:31 # 0
Даже без гомоговна, чтобы импортились разные ключевые слова из разных мудулей и стандартов.
А то кресты какие-то скучноватые. И поехали.
kcalbCube 28.04.2022 15:08 # 0
kcalbCube 12.05.2022 12:02 # 0
guest6 12.05.2022 17:41 # 0
> У вас не получиться парсить синтаксис любого языка регэкспами.
безвузные питухи традиционно не могут в свободные грамматики, еерархию хорьски и лексеры/парсеры
guest6 27.04.2022 15:06 # 0
Steve_Brown 28.04.2022 15:19 # 0
<ваш код>
})}), nullptr); sync1.exec(std::threading::get_current_t hread());
kcalbCube 29.04.2022 05:14 # 0