Anúncios

Foreground threads e Background threads

O CLR considera que existem dois tipos de threads: foreground e background threads.

Foreground threads executam com uma prioridade elevada. Esse tipo de thread evita que a aplicação se encerre antes que tenham executado todo o seu trabalho.

Em contraponto, as background threads não são executadas com prioridade elevada. Background threads são finalizada imediatamente pelo CLR assim que todas as foreground threads de uma aplicação (leia managed assembly) encerram sua execução, sem lançar nenhuma exceção.

Leia mais deste post

Anúncios

O Garbage Collector e seu funcionamento…

Sem o garbage collector seu código não seria como ele é hoje. Provavelmente você se preocuparia muito mais com o consumo de recursos e descarte de instâncias de objetos não mais utilizadas. Também é fato que pouco se pensa sobre o funcionamento do garbage collector. Este post visa destacar brevemente o funcionamento do garbage collector.

clip_image001

Leia mais deste post

Delegate Chain Invocation

Callback functions são blocos de código executável que são passados como parâmetro para outro código, que fica responsável por invocá-los quando apropriado.

O modo como callback functions são suportados em cada linguagem de programação é diferente, mas são frequentemente implementados como subrotinas, expressões lambdas ou ponteiros de função.

O tratamento das linguagens não-gerenciadas sobre os callback functions é limitada a apenas um endereço de memória. Este endereço de memória não contém nenhuma informação adicional sobre o tipo de retorno, o número de parâmetros ou os tipos de dados dos parâmetros.

Leia mais deste post

Desenvolvendo com o Kinect para o Windows.

Nós presenciamos o lançamento de novas tecnologias que mudam o nosso dia-a-dia. Quando digo que “mudam nosso dia-a-dia” me refiro ao fato de passarem a integrar o modo como realizamos nossas tarefas do cotidiano.

clip_image002

Alguns exemplos claros são: o smartphone, o micro-ondas, o computador, o tablet e a televisão. Isso é claro… isso é óbvio! Mas, existem outras criações que são tendências, e que ao meu ver, em questão de cinco anos, estarão totalmente integradas ao nosso dia-a-dia, como os aparelhos citados anteriormente.

Leia mais deste post

Computação Paralela – Paralelismo com C#

Provavelmente você já deve ter ouvido falar sobre processamento paralelo, paralelismo ou computação paralela. Todos estes termos se referem à forma de computação na qual vários cálculos são realizados simultaneamente, resolvidos de forma separada e concorrente (em paralelo).

A computação paralela é utilizada há muitos anos, principalmente em cenários de alto desempenho que exigem processamento pesado.

final-logo-par-72dpi

Leia mais deste post

HasPrecision – Definindo a precisão de campos decimais.

Uma tarefa comum, quando trabalhamos com sistemas financeiros (ou matemáticos), é a necessidade de lidar com a precisão de casas decimais de nossos campos numéricos. Muitas vezes, neste tipo de sistema, o uso de apenas duas casas decimais não é suficiente para armazenar toda a precisão numérica dos valores utilizados. E o Entity Framework fornece recursos para que trabalhemos com diferentes precisões numéricas em campos decimais.

numbers

Leia mais deste post

100 – 10 – 2.0 – 2013

Este é um post bastante especial, pois este é o post número 100 deste blog.

Neste blog procuro postar diferentes assuntos que tenho estudado, como: boas práticas, design patterns, C# e mais especificamente sobre técnicas de acesso a dados, além de algumas experiências com diferentes tecnologias.

Leia mais deste post