Skip to content

Instantly share code, notes, and snippets.

View andrebires's full-sized avatar

André Bires andrebires

  • Belo Horizonte, Brazil
View GitHub Profile
@andrebires
andrebires / async.md
Last active August 17, 2022 15:05
Introdução a programação assíncrona

Afinal, para quê serve programação assíncrona?

Resumidamente, a programação assíncrona permite o uso mais eficiente dos recursos computacionais se comparado com a programação "bloqueante" tradicional.

O principal recurso que se deseja economizar com a programação assíncrona são as threads, que têm um custo de memória, além do overhead de criação das mesmas (CPU). Ao economizarmos recursos, conseguimos tornar o sistema mais escalável.

Lembre-se: O objetivo da programação assíncrona é tornar o sistema mais escalável através do uso eficiente das threads.

@andrebires
andrebires / InstallCertificate.cs
Last active December 28, 2018 12:15
Script for installing a certificate in a store
using System;
using System.Security.Cryptography.X509Certificates;
namespace InstallCertificate
{
class Program
{
static void Main(string[] args)
{
if (args.Length < 2 || args.Length > 4)

Iris presence routing rules

Considering the node name@domain.com/instance, for each routing rule below, it should resolve to the following nodes:

Instance

Resolve only to the exact node address.

Expression:

'bucket.?',
'calendar.datetime',
'calendar.date',
'calendar.day',
'calendar.month',
'calendar.year',
'calendar.time',
'calendar.hour',
'calendar.minute',
'calendar.second',
{
"itemType":"application/vnd.lime.document-select+json",
"items":[
{
"header":{
"type":"application/vnd.lime.media-link+json",
"value":{
"title":"Titulo",
"text":"Este é o primeiro item",
"type":"image/jpeg",
{
"text":"Conteúdo dinâmico",
"scope":"immediate",
"options": [
{
"text":"Option 1"
},
{
"text":"Option 2"
}
// Declarar um parâmetro do tipo 'out' inline (dá pra usar o var tb)
int.TryParse("1234", out int i);
// Suporte de tuplas a nível de linguagem
public (string name, string lastName) GetNameAndLastName(int id)
{
return ("André", "Bires");
}
public void Run()
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Enter the number of iteractions: ");
int count;
if (!int.TryParse(Console.ReadLine(), out count)) count = 10;
var value = "x";
while (count-- > 0)
{
@andrebires
andrebires / gist:9912652
Created April 1, 2014 12:08
JSON To Dictionary
private static Regex _unicodeRegex = new Regex(@"\\u([0-9a-z]{4})", RegexOptions.IgnoreCase | RegexOptions.Compiled);
/// <summary>
/// <see cref="http://stackoverflow.com/questions/1207731/how-can-i-deserialize-json-to-a-simple-dictionarystring-string-in-asp-net"/>
/// </summary>
/// <param name="jsonString"></param>
/// <returns></returns>
private static IDictionary<string, object> ParseJson(string jsonString)
{
try
@andrebires
andrebires / OctoPack.targets
Created June 29, 2012 19:01
Octopus Deploy OctoPack.targets file that gets the assembly version to create the deploy package
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<BuildDependsOn>
$(BuildDependsOn);
OctopusEstablishContext
</BuildDependsOn>
</PropertyGroup>
<PropertyGroup>
<_CopyWebApplicationDependsOn>