[2k/XP] Lange-termijn "windowhandle" oid lek?

Pagina: 1
Acties:

  • Jasper Janssen
  • Registratie: April 2000
  • Laatst online: 18-04-2025
Al sinds ik 2k/XP gebruik en dus niet meer iedere week wel een keer vanzelf rebootte, gebeurt het me dat na een ruim weekje vrij heftig gebruik (30-40 windows open, waarvan een flink aantal Firebirds met tabs) Windows op de een of andere manier uit de een of andere resource lijkt te lopen.

Symptoom is dat op een gegeven moment er geen nieuwe elementen meer bij kunnen komen op mijn desktop. Met 'elementen' bedoel ik dan dingen als hele nieuwe windows, maar ook iedere menubar en toolbar en statusregel lijkt er een te zijn, en ook bijvoorbeeld een tab of zelfs het displayen van een menu uit een menubar, of het windowtje van alt-tab (als die er niet meer bij kan resulteert een alt-tab automatisch in het effect van een "eentje terug alt-tab", dus alt-shift-tab-loslaten). Als ik dan weer een window close kan er ook weer een bij. Minimaliseren van een window maakt niet uit, minimaliseren van taakbeheer waarna hij naar de tray verdwijnt wel. In de loop der tijd nadat ik verder ga wordt de limiet steeds kleiner en moet ik steeds meer vensters afsluiten.

Iemand enig idee welke resource er precies weglekt, en hoe ik erachter kan komen welke applicatie mijn handles in gijzeling houdt?

  • PanMan
  • Registratie: November 1999
  • Laatst online: 07-05 17:00

PanMan

Spun!

Ik kan je helaas niet verder helpen, maar heb er zelf ook last van. Windows kan dan geen nieuwe 'windows' maken, waarbij context menu'tjes ook als een window tellen, oid. Enige dat ik dan idd ook kan doen is een paar oude IE's afsluiten (tegen die tijd heb ik er meestal zo'n 40 oid open, en soms ook wel die al dagen openstaan :)).
Maar, wat het dus echt is weet ik ook niet.. Helaas....

Where a calculator on the ENIAC is equipped with 18,000 vacuum tubes and weighs 30 tons, computers in the future may have only 1,000 vacuum tubes and weigh only 1.5 tons.
– Popular Mechanics, March 1949


Verwijderd

Misschien kan je het probleem achterhalen met Process Explorer.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ik kan jullie allebei wel vertellen dat zo'n beetje iedere scheet onder windows een window-handle heeft. Dus een button, een menu, een toolbar, een statusbar, een window en zo'n beetje alles wat je nog meer kunt verzinnen.

Sterker: In je browser (pak nu got) tel ik op het eerste gezicht ook al weer zo'n 25 tot 50 handles. Zo'n beetje alles wat ik hierboven noem, plus allerlei icons (gifjes), bekijk en verstuur buttons enzovoorts. Als je dan 40 windows met ieder een bult webpagina's hebt open staan kan ik me voorstellen dat als er ergens een bug/lek in zit dit dan vanzelf wel opduikt.

Je kunt proberen in je taskmanager eens te kijken of er een proces tussen zit dat extreem veel geheugen gebruikt of misschien dat je swapfile wel te klein is (en om 1 of andere reden niet kan groeien ofzo).

Wel weet ik dat windows meer dan genoeg window handles af zou moeten kunnen (in theory that is...). D.w.z. in de miljarden. Of het er sneller of beter op wordt naarmate dit aantal groeit is een tweede.

De makkelijkste oplossing (weg van minste weerstand) is gewoon: rebooten. Er zullen ook nog zat mensen in dit topic roepen: "Format C: en alles er opnieuw op!". Maar dat wil niet zeggen dat ik die oplossing ook als daadwerkelijk zou accepteren. Dit probleem moet een (aanwijsbare!) oplossing hebben en die moet verholpen kunnen worden.

Er zijn wel wat tooltjes die je kunnen helpen bij het analyseren van dit probleem, maar ik zou me vooralsnog verdiepen in de taskmanager (die zou in eerste instantie genoeg informatie kunnen geven). Daarna kun je nog altijd moeilijker gaan doen met allerlei tools.

Ik ben in ieder geval erg nieuwschierig naar wat meer informatie dan jij en de 2nd poster hier plaatsen. Dus: Kom op met die specs en data! :Y)

edit:

Ondertussen in XTRM me dus al weer voor en geeft dus een voorbeeld van zo'n tooltje dat ik bedoelde ;)


Oh, om even af te sluiten met een andere gedachte: Het kan natuurlijk ook héél ergens anders in zitten dan het aantal Window handles. Maar ik heb zo'n donkerbruin vermoeden dat jullie eerste gedachte wel eens kan kloppen.

Hebben jullie ook alles Service Packs en de laatste versies van de software/drivers die jullie gebruiken gedownload en geïnstalleerd? Misschien en virusscanner die file/memory-handles niet meer vrijgeeft en zo je geheugen laat vollopen? Misschien wel..... you get my drift :Y)

[ Voor 21% gewijzigd door RobIII op 02-06-2004 03:53 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Jasper Janssen
  • Registratie: April 2000
  • Laatst online: 18-04-2025
Okee:

- Ik heb Firebird (note to self: nodig eens upgraden naar Firefox) afgesloten en daarna weer opnieuw opgestart en weer alle webpaginas die ik erin had weer opgestart via bookmarks. Hierna loop ik nog ongeveer op hetzelfde punt tegen de limiet aan, conclusie > firebird gebruikt waarschijnlijk wel veel handles, maar iig geen onnodige.

- itunes, mirc herstarten: ook geen effect. Dan hebben we het wel zo'n beetje gehad voor de processen die volgens process explorer veel handles gebruiken, met uitzondering van de iexplores en explorer.exe de shell zelf.

- Memory en CPU zijn volgens mij niet het probleem bij mij. Ik heb nu een XP 2500+ met 1024 meg, daarvan is nog ruim 100 meg ongebruikt en ruim 300 meg in gebruik als cache only, dus (volgens mij) eigenlijk ook beschikbaar. Swap staat redelijk vol, 1200 meg in use, maarja er staat veel open en er zal wel wat memory weglekken. Zou geen probleem moeten zijn. Swapfile zelf is al 1500, en mag volgens task manager nog groeien tot 2.5 gieg.

- Vroeger met een celeron 566, celly 1.4, en Duron 1000 en 512, 512 en 256 meg (tussendoor een downgrade wegens hardware stuk) had ik volgens mij dezelfde symptomen, het duurde alleen een stuk langer omdat ik wat minder dingen tegelijk open had meestal. Tussendoor heb ik ook nog een keer geherinstalleerd, dus dat zal ook niet zomaar helpen.

- Process Explorer heb ik inderdaad al naar zitten kijken, en het valt me daarin op dat de diverse Iexplore processen wel heel veel unnamed event handles gebruiken. Ieder ong net zo veel als heel mozill%1.exe, en mozilla.exe regelt gauw 10-20 keer zoveel webpages als zo'n iexplore.

  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Taskmanager zelf kan ook (in de processlist) je aantal open handles e.d. weergeven (processes tab -> view -> select columns en dan handles en bv. gdi objects)

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Jasper Janssen schreef op 02 juni 2004 @ 04:41:
Okee:
- Memory en CPU zijn volgens mij niet het probleem bij mij. Ik heb nu een XP 2500+ met 1024 meg, daarvan is nog ruim 100 meg ongebruikt en ruim 300 meg in gebruik als cache only, dus (volgens mij) eigenlijk ook beschikbaar. Swap staat redelijk vol, 1200 meg in use, maarja er staat veel open en er zal wel wat memory weglekken. Zou geen probleem moeten zijn. Swapfile zelf is al 1500, en mag volgens task manager nog groeien tot 2.5 gieg.
Ik heb ook 1Gb geheugen, maar zelfs als ik Photoshop CS, Visual Studio .Net en een paar browsers open gooi kom ik amper boven de 500Mb uit. Hoe kom je in godsnaam op nog maar 100Mb vrij? Ik vind dat, maar dat is mijn gevoel, ERRUG weinig hoor...

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Jasper Janssen
  • Registratie: April 2000
  • Laatst online: 18-04-2025
RobIII schreef op 02 juni 2004 @ 11:46:
[...]


Ik heb ook 1Gb geheugen, maar zelfs als ik Photoshop CS, Visual Studio .Net en een paar browsers open gooi kom ik amper boven de 500Mb uit. Hoe kom je in godsnaam op nog maar 100Mb vrij? Ik vind dat, maar dat is mijn gevoel, ERRUG weinig hoor...
Mozilla is ruim 200 meg, de iexplores zijn 110, 33, en een stuk of 10 keer gemiddeld 6, thunderbird pakt 67 meg, java (voor Azureus) 40, dan nog een stuk of 8 apps (itunes, mirc, explorer.exe, emule ed) van rond de 40 meg per stuk, 2 keer free agent, trillian, process explorer, die zitten rond de 10, en dan nog een hele zooi processen met 1-10 meg in gebruik. ff Optellen wat dat is bij elkaar.. komt bij elkaar al aan zo'n gig, met een hoop afrondingen naar beneden. Het loopt allemaal erg op.

Om het anders te zeggen: Er is een *reden* dat ik heb geupgrade naar 1024.

  • Jasper Janssen
  • Registratie: April 2000
  • Laatst online: 18-04-2025
elevator schreef op 02 juni 2004 @ 07:28:
Taskmanager zelf kan ook (in de processlist) je aantal open handles e.d. weergeven (processes tab -> view -> select columns en dan handles en bv. gdi objects)
Ah. Hee. Dat wist ik niet.

Handles: winlogon.exe pakt er ruim 12000 bij mij. Isda normaal? Explorer.exe en svchost.exe zo'n 1700 per stuk, nog een iexplore bijna 1500, en voor de rest allemaal onder de 1000.

GDI Objects: Mozilla bijna 3000, explorer.exe 1300, een iexplore 1000, een itunes bijna 1000, een hele zooi met 400-600, ongeveer op het halfweg punt van de rij processen zitten processen met ~50.

GDI Objects *klinkt* naar het soort resource wat de bovenstaande symptomen zou kunnen veroorzaken. Kunnen jullie eens posten wat jullie voor Handles en GDI Objects voor getallen hebben in taskman?
MS Library:
There is a theoretical limit of 65,536 GDI handles per session. However, the maximum number of GDI handles that can be opened per session is usually lower, since it is affected by available memory. There is also a default per-process limit of 10,000 GDI handles.

Windows 2000: There is a limit of 16,384 GDI handles per session. There is no per-process limit.
Als ik alle processen bij elkaar optel die meer dan 100 GDI Objects verbruiken kom ik al op 13913. Als ik ze allemaal optel 14918. Erg dicht in de buurt van die 16384. Al is dit wel XP Pro en niet 2k, maar misschien was XP er nog niet toen dat artikel geschreven werd -- voor al het overige is XP intern erg hetzelfde als 2k. Denk dat dat het dan toch is.

  • Jasper Janssen
  • Registratie: April 2000
  • Laatst online: 18-04-2025
Toch niet. Ik heb nog even verder zitten kijken, en het zijn juist de User Objects die objecten zijn met windows, cursors, carets, menus, dialogs, en icons. GDI objects zijn bitmaps ed, en als die het probleem waren zou ik denk ik eerder menus krijgen zonder inhoud dan helemaal geen menu. Denk ik.
MS Library again
There is a theoretical limit of 65,536 user handles per session. However, the maximum number of user handles that can be opened per session is usually lower, since it is affected by available memory. There is also a default per-process limit of 10,000 user handles.

Windows 2000: There is no per-process limit.
Maar, daarvan heb ik er way minder dan 65000 open. Het zijn er eerder 5-6000. En ik heb nog steeds 220 meg vrij plus 300 meg in de system cache, dus je zou zeggen dat er ruim available memory is om een paar miezerige Objects in op te slaan. "affected by available memory" hoe precies, windows?
Pagina: 1