OZONE Asylum
Forums
DHTML/Javascript
IE JS/DOM performance degradation weirdness
This page's ID:
27610
Search
QuickChanges
Forums
FAQ
Archives
Register
Edit Post
Who can edit a post?
The poster and administrators may edit a post. The poster can only edit it for a short while after the initial post.
Your User Name:
Your Password:
Login Options:
Remember Me On This Computer
Your Text:
Insert Slimies »
Insert UBB Code »
Close
Last Tag
|
All Tags
UBB Help
I am not talking about DOM nodes. I am talking about pointers and objects the way they are represented in memory. Let me explain.... Pointers are "handles" containing physical adresses for allocated memory spaces. It tells where in the disk(s) or ram your object(s) reside. What happens when you allocate an object in any language (new, tipycally), is that a given memory space is allocated for it, and the pointer referring to the beginning of that space is "hidden" behind the variable name you are using. And what you describe, and your solution, is what happens when pointers are nulled out, but the mem space remains allocated somehow, locked for reading, no writing allowed: it's a "memory leak". Memory leaks invariably lead to the mem being bloated by "ghost objects", which leads to massive slowdowns, which leads to a crash at some point, when there is no more free space. Some space engines actually crashed because of this: rockets, satellites... there are known situations where discrete mem leaks killed an immense project. So my guess is that your js objects which refer to nodes contain complex constructs for Dom traversal, and that what leaks are those constructs (not the node itself, the node is statically stored somewhere else). And it's what my 6th sense has hinted at from the start, only I didn't look at your code, and didn't have time, quite frankly, to get used to js again. That's why I think you've spotted a bug in js garbage collection in some engines, like the IE engine. I think IE makers have never tested this situation to that extent, and never spotted the actual leak. -------------------------------------- On to the onion layers theory: this *is* one of the worst possible gaps in terms of security. It can be used to put the system in an unpredictable state, and abuse that state if you can, somehow, "predict the unpredictable". Eg: if you know how the browser will try to trap this mem leak when it notices something is going wrong, prior to crashing severely, or how Windows will try to handle the issue, you'll be able to let some low-level (machine language instruction) slide in to some mem space where it could be executed. And this is known as buffer overflow.
Loading...
Options:
Enable Slimies
Enable Linkwords
« Backwards
—
Onwards »