sql >> Database >  >> RDS >> Mysql

mijn nodejs-script wordt niet vanzelf afgesloten na een succesvolle uitvoering

Ik heb dit probleem net doorgenomen.

Het probleem met alleen het gebruik van process.exit() is dat het programma waar ik aan werk handvatten aan het maken was, maar ze nooit vernietigde.

Het was bezig met het verwerken van een map en het plaatsen van gegevens in orientdb .

dus sommige dingen die ik ben gaan leren, zijn dat databaseverbindingen moeten worden gesloten voordat de referentie wordt verwijderd. En dat process.exit() lost niet alle gevallen op.

Toen mijn project 2000 bestanden verwerkte. Er zouden nog ongeveer 500 over zijn, en de extra handvatten zouden het beschikbare werkgeheugen hebben opgevuld. Wat betekent dat het niet zou kunnen doorgaan. Bereik daarom nooit de process.exit aan het einde.

Aan de andere kant, als u de items sluit die de app vragen om open te blijven, kunt u het probleem bij de bron oplossen.

De twee "Ongedocumenteerde Functies" die ik kon gebruiken, waren

process._getActiveHandles();
process._getActiveRequests();

Ik weet niet zeker welke andere functies zullen helpen bij het oplossen van dit soort problemen, maar deze waren geweldig.

Ze retourneren een array en u kunt veel bepalen over wat er in uw proces gebeurt door deze methoden te gebruiken.

Ik hoop alleen dat dit iemand anders helpt die dit bericht tegenkomt.



  1. De resultaten van een query exporteren met MySQL Workbench

  2. Gegevensmodel autoreparatiewerkplaats

  3. SEC_CASE_SENSITIVE_LOGON Verouderd in 12c

  4. PostgreSQL:tabellen weergeven in PostgreSQL