„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Warum führt das Festlegen von „ulimit -n“ aus einem Go-Programm auf Linux-32-Bit-Distributionen zu einem Fehler „Ungültiges Argument“?

Warum führt das Festlegen von „ulimit -n“ aus einem Go-Programm auf Linux-32-Bit-Distributionen zu einem Fehler „Ungültiges Argument“?

Veröffentlicht am 06.11.2024
Durchsuche:121

Why does setting `ulimit -n` from a Go program on Linux 32-bit distributions result in an \

Wie setze ich ulimit -n aus einem Go-Programm heraus?

Problem

Ein Benutzer hat versucht, ulimit -n aus einem Go-Programm heraus festzulegen Beschränken Sie es innerhalb des Programms und nicht global, indem Sie die Systemaufrufe setrlimit und getrlimit verwenden. Beim Versuch, den Wert festzulegen, ist jedoch ein Fehler mit der Meldung „Ungültiges Argument“ aufgetreten.

Lösung

Es wurde festgestellt, dass das Problem auf Go-Fehler in Getrlimit und Setrlimit für Linux 32 zurückzuführen war. Bitverteilungen. Diese Fehler wurden inzwischen behoben und die folgenden Schritte können unternommen werden, um das Problem zu beheben:

  1. Aktualisierung des Go-Standardzweigtipps. Dies beinhaltet die Fehlerbehebungen.
  2. Erstellen Sie das Programm mit der aktualisierten Go-Version neu.

Ergebnisse

Nach der Aktualisierung auf den Standard-Zweigtipp von Go und dem Neuaufbau des Programms wird die erwartetes Verhalten wird beobachtet:

$ ./rlimit
{1024 4096}
Error Setting Rlimit  operation not permitted
Rlimit Final {1024 4096}
$ sudo ./rlimit
[sudo] password for peterSO: 
{1024 4096}
Rlimit Final {999999 999999}

Hinweis: Bei Linux/amd64-Distributionen ist das Problem nicht aufgetreten. Das Problem trat spezifisch bei Linux-32-Bit-Distributionen auf.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3