/// <summary> /// Create scanner /// </summary> /// <param name="source"></param> /// <param name="target"></param> /// <param name="portProbe"></param> /// <param name="maxProbeCount"></param> /// <param name="minProbePercent"></param> /// <param name="timeout"></param> /// <param name="ct"></param> public async Task ScanAsync(IEnumerable <IPEndPoint> source, Action <IPEndPoint> target, IPortProbe portProbe, int?maxProbeCount, int?minProbePercent, TimeSpan?timeout, CancellationToken ct) { using (var scanner = new PortScanner(_logger, source, (s, p) => target(p), portProbe, maxProbeCount, minProbePercent, timeout, ct)) { await scanner.Completion; } }
/// <summary> /// Create probe /// </summary> /// <param name="scanner"></param> /// <param name="index"></param> public ConnectProbe(PortScanner scanner, int index) : base(index, scanner._portProbe.Create(), scanner._logger) { _scanner = scanner; }