using System;
using System.Threading;
using System.Threading.Tasks;
{
Console.WriteLine("Сейчас стартанёт таймер");
// Стартанёт таймер через секунду и он будет тикать каждые 3 секунды
using var timer = new Timer(_ => Console.WriteLine("Tick!"), null, TimeSpan.FromSeconds(1), TimeSpan.FromSeconds(3));
await Task.Delay(TimeSpan.FromSeconds(10));
}
Console.WriteLine("Таймер больше не тикает");
await Task.Delay(TimeSpan.FromSeconds(10));
Console.WriteLine("В чём мы и убедились");
var cts = new CancellationTokenSource();
var cancellationToken = cts.Token;
Console.WriteLine("Сейчас начнёт тикать, но через 10 секунд перестанет");
cts.CancelAfter(TimeSpan.FromSeconds(10));
var task = Task.Run(async () =>
{
while (!cancellationToken.IsCancellationRequested)
{
cancellationToken.ThrowIfCancellationRequested();
Console.WriteLine("Tick!");
await Task.Delay(TimeSpan.FromSeconds(3), cancellationToken);
}
}
);
try {await task;} catch(OperationCanceledException){}
Console.WriteLine("Больше не тикает");
await Task.Delay(TimeSpan.FromSeconds(5));
Console.WriteLine("В чём мы и убедились");
А также опишите, пожалуйста, очень подробно принцип работы каждого из этих методов сортировки и напишите код для каждого из них.
Или лучше стоит всегда использовать быструю сортировку?
Какие методы сортировки вы можете посоветовать и каким/какими пользуетесь сами?
все преимущества и недостатки DateTime и Stopwatch.
Вот, например, у меня есть целое число 9847748582984. Как его конвертировать в дату?
var dt1 = new DateTime(9847748582984).Dump("dt1"); // 12.01.0001 09:32:54
var dt2 = DateTime.FromBinary(9847748582984).Dump("dt2"); // 12.01.0001 09:32:54
var dt3 = DateTime.FromFileTime(9847748582984).Dump("dt3"); // 12.01.1601 14:32:54
//var dt4 = DateTime.FromOADate(9847748582984).Dump("dt4"); // Invalid
//var dt5 = DateTimeOffset.FromUnixTimeSeconds(9847748582984).Dump("dt5"); // Out of range
var dt6 = DateTimeOffset.FromUnixTimeMilliseconds(9847748582984).Dump("dt6"); //23.01.2282 13:43:02 +00:00
using Flurl.Http;
var url = "ссылка";
var dir = "путь для сохранения";
await url.DownloadFileAsync(dir);
using System.IO;
using System.Net;
var url = "ссылка";
var dir = "путь для сохранения";
var req = HttpWebRequest.Create(url);
using var response = req.GetResponse();
using var file = File.OpenWrite(dir + "/fileName.png");
using var stream = response.GetResponseStream();
stream.CopyTo(file);
using System.IO;
using System.Net.Http;
var url = "ссылка";
var dir = "путь для сохранения";
using var httpClient = new HttpClient();
using var stream = await httpClient.GetStreamAsync(url);
using var file = File.OpenWrite(dir + "/fileName.png");
await stream.CopyToAsync(file);
using System.Net;
var url = "ссылка";
var dir = "путь для сохранения";
using var client = new WebClient();
client.DownloadFile(url, dir + "/filename.png");
Если у заказщика не будет определеного браузера, то все...
Есть Cef, но там нету таких функций как в selenium, есть какой-то компромисс?
#gb > div > div:nth-of-type(1) > div > div:nth-of-type(1) > a
0,показ.датчика1,1,показания датчика2,...
var values = "0,123.5,1,456.25".Split(',');
var firstSensorValue = double.Parse(values[1]);
var secondSensorValue = double.Parse(values[3]);
Ошибка кладет сразу всю программу (просто закрывается).
У меня, при разработке, никаких проблем с Signal'ом не было, подключения никогда не падали.
var digits = new List<int>();
var number = 123456;
while(number > 0) {
var digit = number % 10;
digits.Add(digit);
number /= 10;
}
Console.WriteLine($"Последняя цифра числа: {digits[0]}"); // 6