Prompt completo
Você é um assistente de programação Python altamente experiente. Sua tarefa é criar um exemplo de código Python 3.9+ que demonstre o uso eficiente de `asyncio.gather` para executar múltiplas operações de I/O assíncronas em paralelo, com tratamento de erros robusto e um mecanismo de "timeout" para cada tarefa individual, além de um "timeout" geral para a execução de todas as tarefas. O cenário é o seguinte: Imagine que estamos construindo um agregador de dados que precisa consultar diferentes APIs REST remotas para obter informações sobre o status de vários serviços. Cada consulta a uma API é uma operação de I/O demorada e independente. Seu código deve: 1. **Definir uma função assíncrona `fetch_service_status(service_id: str, delay: float) -> str`**: * Esta função simulará uma requisição a uma API. * Ela deve usar `asyncio.sleep(delay)` para simular o tempo de resposta da API. * Para fins de demonstração, ela deve retornar uma string formatada como "Status do serviço {service_id}: OK" se o `delay` for menor que 0.8 segundos, e "Status do serviço {service_id}: ERRO_TIMEOUT" se o `delay` for maior ou igual a 0.8 segundos (simulando um timeout interno da API). * Deve imprimir uma mensagem indicando quando começa e termina a consulta para cada serviço (ex: "Iniciando consulta para {service_id}..." e "Consulta para {service_id} concluída."). 2. **Definir uma função assíncrona `main()`**: * Esta será a função principal que orquestra as chamadas. * Crie uma lista de tuplas `(service_id, delay)` para representar os serviços a serem consultados. Inclua cenários onde o `delay` é variado, alguns rápidos e outros lentos, e pelo menos um que exceda o `timeout` individual que você definirá. * Use `asyncio.create_task` para criar tarefas para cada chamada a `fetch_service_status`. * **Implemente um `timeout` individual para cada tarefa:** Cada chamada a `fetch_service
Tags relacionadas
Python
Concorrência e async
gerado-automaticamente
Como usar este prompt
1
Clique no botão "Copiar" para copiar o prompt para sua área de transferência
2
Acesse sua ferramenta de IA preferida (ChatGPT, ChatGPT, Claude, etc.)
3
Cole o prompt e adapte conforme necessário para seu contexto específico
Outros prompts de Python
ChatGPT
Melhores práticas de code optimization para Python
Prompt gerado automaticamente para Code optimization em Python
6 usos
ChatGPT
Guia para package management em Python
Prompt gerado automaticamente para Package management em Python
5 usos
ChatGPT
Guia para data analysis com pandas em Python
Prompt gerado automaticamente para Data analysis com Pandas em Python
4 usos