
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
31.10.2018, 20:31
|
|||
|---|---|---|---|
|
|||
Единоразовый вызов функции |
|||
|
#18+
Задача: стартует много потоков. Первый поток должен вызвать функцию авторизации. Пока эта функция не вызвана, остальные потоки не имеют права работать. Если функция выбросила исключение, то текущий поток завершается, а остальные пытаются вызвать ее еще раз. Синхронизацию реализовал на Interlocked-функции. Посмотрите, свежим взглядом на предмет ошибок Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. С уважением, Vasilisk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
31.10.2018, 20:52
|
|||
|---|---|---|---|
|
|||
Единоразовый вызов функции |
|||
|
#18+
Вопрос снят. Т.к. Нужна еще процедура Логаута по принципу "последний закрывает дверь", а новые потоки могут стартовать в любое время, то без глобальной критической секции я решения не вижу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 11:55
|
|||
|---|---|---|---|
|
|||
Единоразовый вызов функции |
|||
|
#18+
семафоры не подходят? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 14:48
|
|||
|---|---|---|---|
|
|||
Единоразовый вызов функции |
|||
|
#18+
Мимопроходящийсемафоры не подходят?Хотелось разрулить все Interlocked функциями. Не разрулилось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.11.2018, 17:01
|
|||
|---|---|---|---|
Единоразовый вызов функции |
|||
|
#18+
_Vasilisk_Если функция выбросила исключение, то текущий поток завершается, а остальные пытаются вызвать ее еще раз. Эту постановку можно написать иначе: "В случае сетевых проблем несколько случайно выбранных потоков завершаются, остальные работают". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=58&tablet=1&tid=2040182]: |
0ms |
get settings: |
7ms |
get forum list: |
22ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
147ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 436ms |

| 0 / 0 |
