when_any question
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 30/100
Direzione di ricerca
Inizia leggendo exec/when_any.hpp e la discussione P2300 su stop_when e la cancellazione. Esegui il reproducer fornito per osservare se il sender perdente viene arrestato. Il lavoro è completo quando la semantica di cancellazione prevista è stata stabilita e documentata o implementata, con test che coprano il comportamento.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
when_any(job1,job2) completes when either job1 or job2 complete.
I was hopeful that when one of the senders completes, the other would be stopped..
Testing that hypothesis with
#include <chrono>
#include <fmt/core.h>
#include <exec/static_thread_pool.hpp>
#include <exec/when_any.hpp>
#include <stdexec/execution.hpp>
using namespace std::chrono_literals;
int main()
{
exec::static_thread_pool pool(4);
stdexec::scheduler auto sch = pool.get_scheduler();
stdexec::sender auto job1 = stdexec::schedule(sch) | stdexec::then([](){
int i{0};
while (true) {
fmt::print("job1: {}\n", i++);
std::this_thread::sleep_for(200ms);
}
});
stdexec::sender auto job2 = stdexec::schedule(sch) | stdexec::then([](){
for (int i = 0; i < 5; ++i) {
fmt::print("JOB2: {}\n", i);
std::this_thread::sleep_for(500ms);
}
});
stdexec::sync_wait(exec::when_any(job1,job2));
}
suggests that this isn't the case.
Bug or feature? Should my job1 be looking for a stop_token in the environment?
I note that P2300 mentions stop_when and doesn't mention when_any. I am guessing that they are synonyms?
- Lingua principale
- C++
- Stelle
- 2.4k
- Fork
- 270
- Merge medio
- 2g 10h
- PR unite (30g)
- 42
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di NVIDIA/stdexec
-
inline_scheduler's namespace-scope static_assert fails under nvcc (private nested __sender access)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
NVIDIA/stdexec#1751 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
NVIDIA/stdexec#2268 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
NVIDIA/stdexec#2240 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di NVIDIA/stdexec
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
hyprwm/aquamarine#426 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
amnezia-vpn/amnezia-client#3222 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
valkey-io/valkey-search#1465 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
KhronosGroup/Vulkan-Tutorial#524 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
microsoft/onnxruntime-genai#2633 ·
I maintainer di solito rispondono entro 1 giorno