Pular para o conteúdo principal

Postagens

Mostrando postagens de Julho, 2010

Magia Assíncrona

Versão PDF
Como transformar objetos comuns em "objetos assíncronos"Programação Concorrente em Erlang - A inspiraçãoJoe Armstrong, um dos criadores da linguagem Erlang nos mostrou uma maneira muito elegante de tratar concorrência na programação. Iremos introduzir alguns conceitos de Erlang que tangem a programação concorrente deixando de lado uma séria de sofisticações como o tratamento e propagação de erros, programação remota para focar nos conceitos mais básicos e gerais.
O primeiro comando básico de concorrência é o BIF (built in function) ``spawn''. Essa função é usada para criar um novo ``processo" (na nomenclatura de Erlang, processo seria uma linha de execução (portanto uma thread) que não compartilha dados). A assinatura da função é a seguinte: spawn(Module, Exported Function, List of Arguments). Considere o seguinte módulo (extraído do tutorial do Erlang):
--module(example1). -export([start/0, say_something/2]). say_something(_, 0) -> don…