Skip to content

Instantly share code, notes, and snippets.

View valerysntx's full-sized avatar
🔋
99%

valery sntx valerysntx

🔋
99%
  • Ukraine, Uzhgorod
View GitHub Profile
@valerysntx
valerysntx / asyncparallelquery.cs
Last active April 28, 2016 01:59
Async Parallel Collection Projections
public struct FromAsyncTaskResult{
public int result;
};
void Main(){
MainNew().GetAwaiter().GetResult();
}
async Task<FromAsyncTaskResult[]> MainNew()
{
@valerysntx
valerysntx / ProducerConsumerQueue.cs
Created April 26, 2016 13:41
ProducerConsumerQueue.cs
public class ProducerConsumerQueue : IDisposable
{
/// <summary>
/// thread blocking collection
/// </summary>
BlockingCollection<WorkItem> taskCollection = new BlockingCollection<WorkItem>();
/// <summary>
/// task continuations and
@valerysntx
valerysntx / AzureQueue_T.cs
Created March 23, 2016 14:46
Reactive Cloud Queue
/* Reactive Cloud Queue */
namespace AzureTrader.Messaging
{
using System;
using System.Collections;
using System.Collections.Generic;
@valerysntx
valerysntx / CommandQueue.cs
Last active April 26, 2016 15:26
Async producer-consumer queue
async Task Main()
{
using (var q = new CommandsPipeline(2))
{
await Task.Run(()=> {
var queue = q;
Parallel.ForEach(string.Format("StringParallelQuery"),
new ParallelOptions {
@valerysntx
valerysntx / FodyWeavers.xml
Created January 6, 2016 13:01
FodyWeavers.xml
<?xml version="1.0" encoding="utf-8" ?>
<Weavers>
<Costura>
<CreateTemporaryAssemblies>
True
</CreateTemporaryAssemblies>
<ExcludeAssemblies>
System
System.Core
</ExcludeAssemblies>
@valerysntx
valerysntx / ninject.factory.cs
Created December 26, 2015 15:05
Ninject Factory
void Main()
{
using(var kernel = new StandardKernel())
{
kernel.Bind<Foo>().ToSelf();
kernel.Bind<IBarFactory>().To<BarFactory>();
kernel.Bind<Bar>().ToSelf();
kernel.Get<Foo>().Do(1,2);
@valerysntx
valerysntx / ActivatorEx.cs
Created December 17, 2015 08:53
Object Activator / Build Instance Factory Delegate
using System;
using System.Reflection;
using System.Linq.Expressions;
using System.Collections;
using System.Linq;
public class Program
{
public static void Main()
{
@valerysntx
valerysntx / ProducerConsumerHub_T.cs
Created December 12, 2015 21:57
Async Produce Consume Coordinator - ProducerConsumerHub<T>
using System;
using System.Threading.Tasks;
namespace AsyncReadWritePipeline
{
public class Program
{
public class ProducerConsumerHub<T>
{
TaskCompletionSource<Empty> _consumer = new TaskCompletionSource<Empty>();
@valerysntx
valerysntx / MessageProcessor.cs
Created December 2, 2015 12:34
Msmq Generic Message Processor
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using GenericMsmqProcessing.Core.MessageHandler;
using GenericMsmqProcessing.Core.Queue;
using log4net;
namespace GenericMsmqProcessing.Core.MessageProccessor
@valerysntx
valerysntx / tomsmqqueuepath.fs
Created November 10, 2015 11:10
matchoperatorequivalentincs.fs
member x.ToMsmqQueuePath() =
match x with
| LocalName(hostName, queueName)-> (sprintf @".\private$\%s" queueName)
| IPAddress(hostName, queueName)-> (sprintf @"FormatName:DIRECT=TCP:%s\private$\%s" hostName queueName)
| Multicast(hostName, port)-> (sprintf @"FormatName:MULTICAST=%s:%i" hostName port)
| MachineId(hostName, queueName)-> (sprintf @"FormatName:PRIVATE=%s\%s" hostName queueName)
| _-> (sprintf @"FormatName:DIRECT=OS:%s\private$\%s" x.Host(getQueueName x))