BornToBeRoot / BornToBeRoot/PowerShell_IPv4PortScanner

[Feature Request] Catch Exception from calling EndInvoke and recommend/dynamically reducing Threads

Offen
#5 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
enhancement help wanted
Vorherrschende Sprache
PowerShell
Sterne
243
Forks
59
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

This is a feature request to add dynamic Thread reduction when `EndInvoke` function causes any kind of exception. Otherwise, exit early with a message to recommend for the -Threads parameter to be used.

Specifically this error that I ran into because the default 500 threads is too high for my virtual lab:
```
Exception calling "EndInvoke" with "1" argument(s): "Thread failed to start."
At C:\temp\IPv4PortScan.ps1:260 char:13
+ $Job_Result = $Job.Pipe.EndInvoke($Job.Result)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ThreadStartException

Exception calling "EndInvoke" with "1" argument(s): "Thread is running or terminated; it cannot restart."
```

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne bei C:\temp\IPv4PortScan.ps1 ungefähr in Zeile 260, wo $Job.Pipe.EndInvoke($Job.Result) die gemeldeten Ausnahmen auslöst, und verfolge, wie der Parameter -Threads die Erstellung von Jobs steuert. Ermittle, wie Fehler die Thread-Anzahl reduzieren oder eine frühzeitige Empfehlung erzeugen sollten, und überprüfe anschließend das Verhalten anhand beider gezeigten EndInvoke-Fehler.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
powershell
Bereich
cli, networking
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.