Simultaneidade de programação

Definição - o que significa simultaneidade de programação?

Simultaneidade - no contexto da programação - é a capacidade de um programa ser decomposto em partes que podem ser executadas independentemente umas das outras.

Isso significa que as tarefas podem ser executadas fora de ordem e o resultado ainda seria o mesmo como se fossem executadas em ordem.

Definirtec explica a simultaneidade de programação

A simultaneidade de programação é a capacidade de um algoritmo ou programa de executar mais de uma tarefa por vez. O conceito é semelhante ao processamento paralelo, mas com a possibilidade de muitos trabalhos independentes fazerem coisas diferentes ao mesmo tempo, em vez de executar o mesmo trabalho.

Os programas simultâneos podem ser difíceis de escrever simplesmente porque o gerenciamento de tarefas independentes requer coordenação de recursos. O famoso Dining Philosophers Problem é um experimento de pensamento clássico que ilustra as complexidades do compartilhamento de recursos e da simultaneidade.

Os sistemas operacionais multitarefa modernos são simultâneos com sua capacidade de executar muitos programas diferentes ao mesmo tempo. À medida que o hardware de computação se torna mais barato, a execução de trabalhos complexos em clusters se torna mais viável.

Várias linguagens de programação foram projetadas com a simultaneidade em mente, incluindo Go.