[en] CONCURRENCY AND COORDINATION MODELS FOR EVENT-DRIVEN IN LUA

[pt] O uso de multithreading tem se popularizado como forma de separar a execução de tarefas concorrentes e de alcançar maior desempenho aproveitando melhor o tempo das CPUs. No entanto, a programação com threads não é uma tarefa fácil. O uso dos recursos compartilhados deve ser coordenado, pois o a...

Descripción completa

Detalles Bibliográficos
Autor: BRUNO OLIVEIRA SILVESTRE
Tipo de recurso: tesis doctoral
Estado:Versión publicada
Fecha de publicación:2010
País:Brasil
Institución:Pontifícia Universidade Católica do Rio de Janeiro (PUC-RIO)
Repositorio:Repositório Institucional da PUC-RIO (Projeto Maxwell)
Idioma:portugués
OAI Identifier:oai:MAXWELL.puc-rio.br:15131
Acceso en línea:https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=15131&idi=1
https://www.maxwell.vrac.puc-rio.br/colecao.php?strSecao=resultado&nrSeq=15131&idi=2
http://doi.org/10.17771/PUCRio.acad.15131
Access Level:acceso abierto
Palabra clave:[pt] PROGRAMACAO ORIENTADA A EVENTOS
[pt] CONCORRENCIA
[pt] LUA
[pt] COORDENACAO
[en] EVENT-ORIENTED PROGRAMMING
[en] CONCURRENCE
[en] LUA
[en] COORDINATION
Descripción
Sumario:[pt] O uso de multithreading tem se popularizado como forma de separar a execução de tarefas concorrentes e de alcançar maior desempenho aproveitando melhor o tempo das CPUs. No entanto, a programação com threads não é uma tarefa fácil. O uso dos recursos compartilhados deve ser coordenado, pois o acesso concorrente aos mesmos, na maioria dos casos, gera inconsistência na aplicação. O modelo de desenvolvimento orientado a eventos foi apontado por alguns como uma boa alternativa na criação de aplicações. Nesse modelo, a tarefa é realizada por um ou mais eventos, e um loop principal fica responsável por receber e despachar esses eventos. Investigamos, neste trabalho, um modelo em Lua que combina orientação a eventos com preempção sem trazer de volta os problemas de programação concorrente. Investigamos também como características da linguagem podem ser utilizadas para prover mecanismos de coordenação flexíveis. Essas características podem ajudar, por exemplo, a compor novos mecanismos a partir de existentes.