Articles of concorrência

A iteração de valores do ConcurrentHashMap é segura para encadeamento?

No javadoc para ConcurrentHashMap é o seguinte: As operações de recuperação (incluindo get) geralmente não são bloqueadas, portanto podem se sobrepor às operações de atualização (incluindo colocar e remover). As recuperações refletem os resultados das operações de atualização mais recentes concluídas no início. Para operações agregadas, como putAll e clear, as recuperações simultâneas podem refletir […]

O que é um mutex?

Um mutex é um conceito de programação que é freqüentemente usado para resolver problemas de multi-threading. Minha pergunta para a comunidade: O que é um mutex e como você o usa?

Coordenando a execução paralela em node.js

O modelo de programação orientada a events do node.js torna um pouco complicado coordenar o stream do programa. A execução sequencial simples é transformada em retornos de chamada nesteds, o que é bastante fácil (embora um pouco complicada para escrever). Mas como sobre a execução paralela? Digamos que você tenha três tarefas A, B, C […]

ExecutorService que interrompe tarefas após um tempo limite

Estou procurando uma implementação de ExecutorService que possa ser fornecida com um tempo limite. As tarefas enviadas ao ExecutorService são interrompidas se demorar mais do que o tempo limite a ser executado. Implementar uma besta dessas não é uma tarefa tão difícil, mas estou imaginando se alguém sabe de uma implementação existente. Aqui está o […]

Quando e como devo usar uma variável ThreadLocal?

Quando devo usar uma variável ThreadLocal ? Como isso é usado?

SELECT ou INSERT está em uma function propensa a condições de corrida?

Eu escrevi uma function para criar posts para um simples mecanismo de blogging: CREATE FUNCTION CreatePost(VARCHAR, TEXT, VARCHAR[]) RETURNS INTEGER AS $$ DECLARE InsertedPostId INTEGER; TagName VARCHAR; BEGIN INSERT INTO Posts (Title, Body) VALUES ($1, $2) RETURNING Id INTO InsertedPostId; FOREACH TagName IN ARRAY $3 LOOP DECLARE InsertedTagId INTEGER; BEGIN — I am concerned about […]

O que é um bom padrão para usar um mutex global em c #?

A class Mutex é muito mal entendida e o Global mutexes ainda mais. Qual é o padrão bom e seguro a ser usado ao criar mutexes globais? Um que funcione Independentemente da localidade em que minha máquina está É garantido para liberar o mutex corretamente Opcionalmente, não fica pendente para sempre se o mutex não […]

Coleção foi modificada; operação de enumeração não pode executar

Eu não posso chegar ao fundo deste erro, porque quando o depurador é anexado, parece não ocorrer. Abaixo está o código. Este é um servidor WCF em um serviço do Windows. O método NotifySubscribers é chamado pelo serviço sempre que houver um evento de dados (em intervalos randoms, mas não com muita frequência – cerca […]

JavaScript é garantido para ser single-threaded?

JavaScript é conhecido por ser single-threaded em todas as implementações de navegador modernas, mas é que especificado em qualquer padrão ou é apenas por tradição? É totalmente seguro assumir que o JavaScript é sempre single-threaded?