Acties:
  • 0 Henk 'm!

  • Tyrian
  • Registratie: Maart 2001
  • Niet online

Tyrian

It's Unreal.

Topicstarter
Ik draai een game server die van tijd tot tijd de slechte gewoonte heeft om vast te lopen met 100% CPU usage. Ik kan geen oplossing voor het probleem vinden dus ben ik op zoek naar het volgende:

Een tooltje (Voor Windows 2000) die de CPU usage in de gaten houdt en wanneer dit voor langere tijd (enkele minuten ofzo) op de max staat het proces afsluit.

Als het proces is afgesloten kan ik het weer automatisch laten herstarten met een batch bestandje.

Ik heb al een Google search geprobeerd, maar ik kreeg enkel irrelevante resultaten. Kent iemand een tooltje wat doet wat ik zoek?

http://www.hypercoop.tk | GW user page | GW2 user page

Specs


Acties:
  • 0 Henk 'm!

  • Rambo
  • Registratie: Maart 2001
  • Laatst online: 19-12-2024
Een uur gezocht met google naar code voor Delphi, niks bruikbaars kunnen vinden :(

Dus als iemand me de code kan geven om van een bepaalde process de cpu usage te geven, dan bouw ik er een applictie bij.

Acties:
  • 0 Henk 'm!

  • Brahiewahiewa
  • Registratie: Oktober 2001
  • Laatst online: 30-09-2022

Brahiewahiewa

boelkloedig

De èchte oplossing is natuurlijk om een update voor die game server te krijgen waarin de bug (memory leak o.i.d.) is opgelost.
Zolang je dat niet hebt kun je ook een vbscriptje schedulen dat (bijv. elk uur ) de service in kwestie stopt en opnieuw start
Visual Basic:
1
2
3
4
5
6
7
8
ServiceName = "<GameServer>"

For Each objService In GetObject ( "winmgmts:\\.\root\cimv2" ).ExecQuery ( "Select * from Win32_Service Where Name='" & ServiceName & "'" )

    If objService.started Then If objService.StopService = 3 Then WScript.Sleep 5000
    If Not objService.started Then objService.StartService

Next 'objService
FF <GameServer> vervangen door de juiste naam van de server

QnJhaGlld2FoaWV3YQ==


Acties:
  • 0 Henk 'm!

  • Tyrian
  • Registratie: Maart 2001
  • Niet online

Tyrian

It's Unreal.

Topicstarter
Brahiewahiewa schreef op donderdag 21 juli 2005 @ 10:08:
De èchte oplossing is natuurlijk om een update voor die game server te krijgen waarin de bug (memory leak o.i.d.) is opgelost.
Zolang je dat niet hebt kun je ook een vbscriptje schedulen dat (bijv. elk uur ) de service in kwestie stopt en opnieuw start
Visual Basic:
1
2
3
4
5
6
7
8
ServiceName = "<GameServer>"

For Each objService In GetObject ( "winmgmts:\\.\root\cimv2" ).ExecQuery ( "Select * from Win32_Service Where Name='" & ServiceName & "'" )

    If objService.started Then If objService.StopService = 3 Then WScript.Sleep 5000
    If Not objService.started Then objService.StartService

Next 'objService
FF <GameServer> vervangen door de juiste naam van de server
Aangezien de memory usage niet verandert komt de server waarschijnlijk ergens in een eindeloze lus terecht.

Die automatische restart na een bepaalde tijd is niet handig voor mij omdat het probleem zich random voordoet, en een restart nadelige gevolgen heeft voor de spelers. (Inventory gaat dan verloren)

http://www.hypercoop.tk | GW user page | GW2 user page

Specs

Pagina: 1