|
|
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
Есть, что-то из коробки, чем можно заменить PostThreadMessage. Чтобы работало под линукс? Цель переключиться в контекст указанного потока и передать какой-то указатель. Подобное делает TThreadQueue, но она работает только в главный поток С уважением, Vasilisk ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2019, 17:19 |
|
||
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, обычная очередь, так называемый канал, + поток который её разбирает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2019, 17:24 |
|
||
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
kealon(Ruslan), Нашел уже TThreadedQueUe<T> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2019, 17:27 |
|
||
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
Это ж просто тред-сейф очередь, разве что с таймаутом ожидания вместо обычного бесконечного висения. Никаких "переключений контекста" там нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2019, 18:33 |
|
||
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
Василий 2Это ж просто тред-сейф очередь, разве что с таймаутом ожиданияТам много чего есть Василий 2Никаких "переключений контекста" там нет.Ну не все коту масленица. Иногда приходится программировать Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2019, 18:52 |
|
||
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
Василий 2Никаких "переключений контекста" там нет.не помню что бы где-то они были ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2019, 19:32 |
|
||
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_Нашел уже TThreadedQueue<T>Который до Delphi Tokio включительно содержит ошибку в методе Grow. В Rio ошибку исправили ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2019, 14:32 |
|
||
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, да, за дельфийским RTL глаз да глаз нужен но в принципе для кросплатф. очереди списка\массива и классов из System.SyncObjs хватает с избытком берёшь какой нить шарповый или явовский класс и заполняешь, как по учебнику, его реализацию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2019, 17:23 |
|
||
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, исходники обычно можно править. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.08.2019, 20:21 |
|
||
|
Кроссплатформенный PostThreadMessage
|
|||
|---|---|---|---|
|
#18+
makhaonисходники обычно можно править.Спасибо, кэп! Только в данном случае нельзя. Ломается компиляция System.Classes (Unit System.Classes was compiled with a different version of System.Generic.Collections). Пришлось TThreadedQueue выносить в отдельный модуль и уже там править kealon(Ruslan)но в принципе для кросплатф. очереди списка\массива и классов из System.SyncObjs хватает с избыткомВ принципе для всего хватает ассемблера. Но хочется поменьше работы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.08.2019, 14:38 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39855678&tid=2039094]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
168ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 469ms |

| 0 / 0 |
