Hey all,

Hope you all had a good time at QtCS so far.


Anyway, I was reading through some of the notes. I have looked at QFuture some 
on my own too...
QFuture is quite alright when used for its intended purpose - GUI. Other than 
that it's too magical.
It let's you read results as-they-come, which is great when you are populating 
a GUI as the results
come in.
But for a normal use-case this "maybe there are multiple results" makes it 
terrible to interface with
generically.

Specifically making it awaitable for the sake of coroutines:

```
QFuture<int> future;
auto result = co_await future;
```

What is decltype(result) here? It should be the type that the QFuture has 
'promised'.
But do we make it QList<int> _just in case_ there are multiple results added?
Given all coroutines would return 1 value, while most QtConcurrent operations
could return lists, it's not an easy answer.

Not being able to answer this at compile-time means, IMO, it can't 
_generically_ be made awaitable
and we are far better off introducing a new type, like QTask or similar, with a 
smaller interface,
for use with coroutines and other generic code.


Mårten
-- 
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development

Reply via email to