Size: a a a

2ch /pr/ #staythefuckhome

2020 April 21

S

Sooqa in 2ch /pr/ #staythefuckhome
источник

Б

Буква in 2ch /pr/ #staythefuckhome
пенисы
источник

.

..:: махуноф ::..... in 2ch /pr/ #staythefuckhome
Сравнил хелло ворлд на шарпе с квантовым калькулятором на го?
источник

Б

Буква in 2ch /pr/ #staythefuckhome
Sooqa
Питон гавно
да
источник

К

Коля🤔🎭 in 2ch /pr/ #staythefuckhome
using System;
using System.Diagnostics;
using System.Linq;
using System.Threading.Tasks;
using System.Threading.Tasks.Channels;

namespace ChannelsTest
{
   class Program
   {
       public static void Measure(string title, Action<int, bool> test, int count, int warmupCount = 1)
       {
           test(warmupCount, true); // Warmup
           var sw = new Stopwatch();
           GC.Collect();
           sw.Start();
           test(count, false);
           sw.Stop();
           Console.WriteLine($"{title}: {sw.Elapsed.TotalMilliseconds:0.000}ms");
       }

       static async void AddOne(WritableChannel<int> output, ReadableChannel<int> input)
       {
           await output.WriteAsync(1 + await input.ReadAsync());
       }

       static async Task<int> AddOne(Task<int> input)
       {
           var result = 1 + await input;
           await Task.Yield();
           return result;
       }

       static void Main(string[] args)
       {
           if (!int.TryParse(args.FirstOrDefault(), out var maxCount))
               maxCount = 1000000;
           Measure($"Sending {maxCount} messages (channels)", (count, isWarmup) => {
               var firstChannel = Channel.CreateUnbuffered<int>();
               var output = firstChannel;
               for (var i = 0; i < count; i++) {
                   var input = Channel.CreateUnbuffered<int>();
                   AddOne(output.Out, input.In);
                   output = input;
               }
               output.Out.WriteAsync(0);
               if (!isWarmup)
                   Console.WriteLine(firstChannel.In.ReadAsync().Result);
           }, maxCount);
           Measure($"Sending {maxCount} messages (Task<int>)", (count, isWarmup) => {
               var tcs = new TaskCompletionSource<int>();
               var firstTask = AddOne(tcs.Task);
               var output = firstTask;
               for (var i = 0; i < count; i++) {
                   var input = AddOne(output);
                   output = input;
               }
               tcs.SetResult(-1);
               if (!isWarmup)
                   Console.WriteLine(output.Result);
           }, maxCount);
       }
   }
}
источник

К

Коля🤔🎭 in 2ch /pr/ #staythefuckhome
Вот код на Шарпе
источник

К

Коля🤔🎭 in 2ch /pr/ #staythefuckhome
(сори лень на пастебин)
источник

Б

Буква in 2ch /pr/ #staythefuckhome
зачем выбрал
источник

T

TNN TITAN in 2ch /pr/ #staythefuckhome
Коля🤔🎭
using System;
using System.Diagnostics;
using System.Linq;
using System.Threading.Tasks;
using System.Threading.Tasks.Channels;

namespace ChannelsTest
{
   class Program
   {
       public static void Measure(string title, Action<int, bool> test, int count, int warmupCount = 1)
       {
           test(warmupCount, true); // Warmup
           var sw = new Stopwatch();
           GC.Collect();
           sw.Start();
           test(count, false);
           sw.Stop();
           Console.WriteLine($"{title}: {sw.Elapsed.TotalMilliseconds:0.000}ms");
       }

       static async void AddOne(WritableChannel<int> output, ReadableChannel<int> input)
       {
           await output.WriteAsync(1 + await input.ReadAsync());
       }

       static async Task<int> AddOne(Task<int> input)
       {
           var result = 1 + await input;
           await Task.Yield();
           return result;
       }

       static void Main(string[] args)
       {
           if (!int.TryParse(args.FirstOrDefault(), out var maxCount))
               maxCount = 1000000;
           Measure($"Sending {maxCount} messages (channels)", (count, isWarmup) => {
               var firstChannel = Channel.CreateUnbuffered<int>();
               var output = firstChannel;
               for (var i = 0; i < count; i++) {
                   var input = Channel.CreateUnbuffered<int>();
                   AddOne(output.Out, input.In);
                   output = input;
               }
               output.Out.WriteAsync(0);
               if (!isWarmup)
                   Console.WriteLine(firstChannel.In.ReadAsync().Result);
           }, maxCount);
           Measure($"Sending {maxCount} messages (Task<int>)", (count, isWarmup) => {
               var tcs = new TaskCompletionSource<int>();
               var firstTask = AddOne(tcs.Task);
               var output = firstTask;
               for (var i = 0; i < count; i++) {
                   var input = AddOne(output);
                   output = input;
               }
               tcs.SetResult(-1);
               if (!isWarmup)
                   Console.WriteLine(output.Result);
           }, maxCount);
       }
   }
}
ты ебанутый?
источник

Б

Буква in 2ch /pr/ #staythefuckhome
срал*
источник

К

Коля🤔🎭 in 2ch /pr/ #staythefuckhome
package main

import (
   "flag";
   "fmt";
   "time"
)

func measure(start time.Time, name string) {
   elapsed := time.Since(start)
   fmt.Printf("%s took %s", name, elapsed)
   fmt.Println()
}

var maxCount = flag.Int("n", 1000000, "how many")

func f(output, input chan int) {
   output <- 1 + <-input
}

func test() {
   fmt.Printf("Started, sending %d messages.", *maxCount)
   fmt.Println()
   flag.Parse()
   defer measure(time.Now(), fmt.Sprintf("Sending %d messages", *maxCount))
   finalOutput := make(chan int)
   var left, right chan int = nil, finalOutput
   for i := 0; i < *maxCount; i++ {
       left, right = right, make(chan int)
       go f(left, right)
   }
   right <- 0
   x := <-finalOutput
   fmt.Println(x)
}

func main() {
   test()
   test()
}


вот на гоше
источник

T

TNN TITAN in 2ch /pr/ #staythefuckhome
нахуя ты это сделал
источник

T

TNN TITAN in 2ch /pr/ #staythefuckhome
сука
источник

S

Sooqa in 2ch /pr/ #staythefuckhome
Коля🤔🎭
using System;
using System.Diagnostics;
using System.Linq;
using System.Threading.Tasks;
using System.Threading.Tasks.Channels;

namespace ChannelsTest
{
   class Program
   {
       public static void Measure(string title, Action<int, bool> test, int count, int warmupCount = 1)
       {
           test(warmupCount, true); // Warmup
           var sw = new Stopwatch();
           GC.Collect();
           sw.Start();
           test(count, false);
           sw.Stop();
           Console.WriteLine($"{title}: {sw.Elapsed.TotalMilliseconds:0.000}ms");
       }

       static async void AddOne(WritableChannel<int> output, ReadableChannel<int> input)
       {
           await output.WriteAsync(1 + await input.ReadAsync());
       }

       static async Task<int> AddOne(Task<int> input)
       {
           var result = 1 + await input;
           await Task.Yield();
           return result;
       }

       static void Main(string[] args)
       {
           if (!int.TryParse(args.FirstOrDefault(), out var maxCount))
               maxCount = 1000000;
           Measure($"Sending {maxCount} messages (channels)", (count, isWarmup) => {
               var firstChannel = Channel.CreateUnbuffered<int>();
               var output = firstChannel;
               for (var i = 0; i < count; i++) {
                   var input = Channel.CreateUnbuffered<int>();
                   AddOne(output.Out, input.In);
                   output = input;
               }
               output.Out.WriteAsync(0);
               if (!isWarmup)
                   Console.WriteLine(firstChannel.In.ReadAsync().Result);
           }, maxCount);
           Measure($"Sending {maxCount} messages (Task<int>)", (count, isWarmup) => {
               var tcs = new TaskCompletionSource<int>();
               var firstTask = AddOne(tcs.Task);
               var output = firstTask;
               for (var i = 0; i < count; i++) {
                   var input = AddOne(output);
                   output = input;
               }
               tcs.SetResult(-1);
               if (!isWarmup)
                   Console.WriteLine(output.Result);
           }, maxCount);
       }
   }
}
Бан мразе
источник

Б

Буква in 2ch /pr/ #staythefuckhome
блять
источник

К

Коля🤔🎭 in 2ch /pr/ #staythefuckhome
источник

Б

Буква in 2ch /pr/ #staythefuckhome
за что
источник

S

Sooqa in 2ch /pr/ #staythefuckhome
источник

Б

Буква in 2ch /pr/ #staythefuckhome
Я тебя запомнил
источник

Б

Буква in 2ch /pr/ #staythefuckhome
Я знаю где ты живешь
источник