It is extremely unlikely that you would run out of memory before the GC collected (where the fix is to call GC.Collect).
The poblem sounds more like you're running out of a non-memory system resource such as file handles. Your call to GC.Collect and GC.GetTotalMemory is most likely causing the a collect and then a finalizer run that frees up file handles. Make sure you call Dispose on objects that implement IDisposable after you've finished using them (or use the C# using statement to automatically dispose objects after a code block has finished).
If I was one of the team members, I wouldn't want my photo up there next to an article that documents my mediocre programming skills.
Criticisms of the team aside, I would like to say that neither Java nor C# have made any steps to remedy problems like this with seem to be all too common with inexperienced developers. Both Java and C# need to support attaching to event handles with "weak" handlers. That is, the handler will not hold onto the object which defines the handler (and will automatically deregister itself sometime after the object has been collected). In many cases, there is a need for an object to listen and handle an event from another object, but only whilst the object that is listening is still referenced (with the exception of the reference held by the object firing the event).
In C#, the (admittedly ugly) way to implement this is to use an anonymous method and a weak reference:
// Need a weak reference to the current object (we want it collected) WeakReference weakRef = new WeakReference(this); // Need a local (not field) reference to object that raises the event SomeClass someObject = this.SomeObject;
The "closure" that is created for the anonymous method does not hold a reference to "this" as it does not access any of "this"'s fields or methods unless it's through the weakreference.
The code has a flaw where the event handler code (only a few bytes to hold the closure) will never deregistered be collected unless the event is fired sometime after the owner object has been collected. This can be fixed by using a NotifyingWeakReference (a weak reference that raises an event when it has been collected).
The helmet doesn't prove that outside influence is unnecessary. But it does prove that a supernatural influence is unnecessary.
It's like how we can now show that there is a scientific explanation for thunder. An angry yelling God as an explanation for thunder becomes ridiculous in the light of scientic reasoning.
If for example I had a "taste box" that made everything taste like chocolate...it doesn't prove that nothing exists that tastes of chocolate.
No, but chocolate isn't supernatural. What this proved is that something "supernatural" like God isn't a required explanation. A simple chemical imbalance or "helmet" can explain feelings that otherwise would have been attributed to the paranormal.
Since you have an HTPC, you can use an XBOX USB HD-DVD player combined with SlySoft AnyDVD to bypass the copy protection so you don't get all the annoying inbuilt advertising nor the HDCP hardware restrictions.
1) Build an HTPC with an XBOD USB HD-DVD drive (cheapest drive available). 2) Install SlySoft AnyDVD to disable content protection and HDCP requirements. 3) Enjoy your HiDef movies
The DVD player's digital-analogue converter could be affected by variations in the input power. It seems very unlikely that that would be the case by simply changing the power cable!
Hey, guess what. The other day I had a process that stopped working. Thinking quickly, I figured out what was wrong and fixed it. Everyone was happy. Do I get a front page article too?
One thing you'll definitely notice about hidef video is that text (like credits) look like computer rendered text rather than the blurry identifiably "video-looking" text you see on a DVD or standard def broadcast TV. It actually looks like you're watching a flash animation on a computer screen rather than MPEG2/4 compressed video. That's the kind of clarity you get. You can actually see individual stubbles on people when you have closeups. You'd be a fool to think that there was no improvement
Well actually, I have a 720p TV (Bravia 46" V series). It's hooked up to my custom built HTPC running Vista Media Center and I output using standard VGA cable. Analogue VGA cables handle 1360x768 perfectly fine and it actually looks better cause it won't go through the TV's "image enhancing" processor since the TV thinks it's only PC input (text vs video).
Hi-Def videos playing through the PC into the TV makes a world of a difference in clarity compared to DVD with a PAL cable (which looks like absolute crap). It's a black and white difference IMHO.
Everyone I've demonstrated the system to is wowed by the quality hidef video compared to standard def digital TV/DVD.
Try playing some 1080p or 720p movie trailers from apple.com on your computer monitor, and then try then non-hidef versions and tell me you don't notice a difference.
When people say "Iran" in this context they're talking about the Government, not the people. Up until the revolution in 1979, Iran was a friend and, as you might have noticed, many Iranians have attained high levels of respect and power in America.
Anyway, I'd say the US government has considered the Iranian government an enemy in one way or another since this happened.
Actually provided the consumer as human being can view/listen to the content with their eyes/ears (in analog form obviously), the content itself is already cracked. for example, we can imagine that someone put an HD video camera in front of the LCD screen, and connect the line-in of a sound recorder to the 5.1/7.1 analog output of the BD player --- viola, all the contents are pirated!
Well duh. The whole point is to protect the digital content in its pure pristine quality. I don't think sony are trying to use blueray-drm to protect the content from analog piracy which happens all the time anyway.
That's why the GP was talking about cracking HDCP, although at that point you're still going to have to recompress the content which has already been decompressed for transmission across HDMI which may cause some loss of data but nothing compared to recording out of your analog (ew) output.
Yeah but Super Jesus (not to be confused with Fire Jesus or Raccoon Jesus -- and tanooki Jesus is right out) is built out of stone, the Eiffel tower is built out of metal (too lazy to look up the exact composition). Carving something out of stone is a lot harder than putting together pieces of metal. Especially carving something out of stone and ending up with a seven hundred ton statue. Compared to a giant metal stick.
It's built out of reenforced concrete with a stone facade. Hardly a wonder.
I can't believe you said that. You can't compare systems because they're all imperfect? We're not trying to identify perfection here, just which is better overall.
one of this makes me feel less strongly about these things - just depressed.
Instead of being depressed why not follow Mao, Pol Pot, etc. Kill all capitalists, intellectuals, anyone else who could threaten your "socialist paradise".
Have you thought that the reason socialism hasn't been "properly implemented" is because it can't be?
One day you might understand that the only way to have your the socialist paradise you yearn to masturbate over is to CONTROL people, and to deprive them of their individual liberty.
There is absolutely no reason why someone like you should dicatate to me what I may or may not do. I don't want you to tell me that I can't save up what meager resources I may have, use my creative talents to add value to them and then sell them to someone who wants it. You cannot elimiate inequality -- it is impossible. You can make everyone wear the same clothes, eat the same food, etc but there will always be someone who can use his brain, looks, whatever to make himself wealthier than other people.
I'm sure you feel really good about yourself that you are "depressed" about the world because of the evils of capitalism. Saying how depressed you and having a sense of loathing about your culture probably makes you feel less guilty. I advise you to use the system to your advantage. Work, earn money and then give that money to people who need it more than you. You could start by selling your computer and cancelling your internet connection (products of capitalism and totally unnecessary) and giving the money to the poor.
He complains about the new menu system in Vista Media Center which uses horizontal scrolling. This is not the first time I've heard this and I agree it does seem to be quite wasteful on a 4:3 display but on a 16:9 plasma/LCD (which people building HTPCs should seriously consider), it's fantastic. The same can be said about the vista wall of music interface which is an easy and visually impressive way to navigate music and movies if you have a 16:9 display.
MCE is probably the best product microsoft has written. It has a pretty interface reminiscent of something apple would design and it suprisingle stable. It does it it's designed for and it does it well.
Yes a runtime error. The point of generics is to save typing casts and to detect type errors at compile time, and Java and C# do this.
You seriously need to study what generics are. It is NOT for saving typing of casts.
Yes this is a good type system, because there is only one List class and it is generic, so of course a list will compare as itself. When you create a new List you aren't creating a new class you are constraining the type (a class is not a type).
Oh really? That's like saying there is only one class (Object) and java.lang.String is just an extension of that class. Almost every other language defines them as different types because they are. Java's type erasure hack for generics seems to have generated a lot of programmers who think that generics is to "save on writing casts". Ick.
Generics should help the programmer, not create more obstructions and busy-work as they do in C#.
It does, whilst still maintaining langauge correctness.
iow, changing C# to let programmers use the covariance and contravariance in generic types already supported by CLR, because the current state of C# where List !instanceof List is too restrictive? Congratulations you just proved my point that C# generics are a 'very narrow, rigid, confining'. Generics should help the programmer, not create more obstructions and busy-work as they do in C#.
It's restrictive in the sense that you can't cast Object into a String and expect it to work. Seriously. What is your background on programming languages?
CLR can't even inline methods over 32 instructions even in the tightest loop because of their mistakes (ie incapable of interpretation) whereas if it will be faster Java can inline methods 5+ calls deep into blocks of 10k or more code because it can. And the 'fix' is to make CLR even more complicated to optimize? Good luck with that one, Microsoft.
Wrong again. IL has been designed for JIT compilation from the start but that doesn't mean that you can't interpret IL efficiently by using an intermediate byte-code like representation. That's what Portable.NET/DotGNU (the project I work on) does.
Anyway, what and when to inline is up to the JIT compiler. The JVM has NO advantage and infact has to work harder to inline and there are huge hacks because of the lack of user-defined-structs for things like Point(X,Y). The Java JIT is a marvel of engineering, the optimisations are amazing compared to the current generation of.NET JITs but.NET is catching up. I have no idead where you got the idea that the CLR can't inline methods over 32 instructions because it is incapable of interpretation. Interpretation has absolutely NOTHING to do with it. Do you actually understand what you're spouting or are you just pulling quotes out of your memory that you read on some guys blog?
Tesla's failure is a perfect example of capitalism at work.
Um, hello? He never would have been half as successful if he hadn't immigrated to America.
It is extremely unlikely that you would run out of memory before the GC collected (where the fix is to call GC.Collect).
The poblem sounds more like you're running out of a non-memory system resource such as file handles. Your call to GC.Collect and GC.GetTotalMemory is most likely causing the a collect and then a finalizer run that frees up file handles. Make sure you call Dispose on objects that implement IDisposable after you've finished using them (or use the C# using statement to automatically dispose objects after a code block has finished).
Criticisms of the team aside, I would like to say that neither Java nor C# have made any steps to remedy problems like this with seem to be all too common with inexperienced developers. Both Java and C# need to support attaching to event handles with "weak" handlers. That is, the handler will not hold onto the object which defines the handler (and will automatically deregister itself sometime after the object has been collected). In many cases, there is a need for an object to listen and handle an event from another object, but only whilst the object that is listening is still referenced (with the exception of the reference held by the object firing the event).
In C#, the (admittedly ugly) way to implement this is to use an anonymous method and a weak reference: The "closure" that is created for the anonymous method does not hold a reference to "this" as it does not access any of "this"'s fields or methods unless it's through the weakreference.
The code has a flaw where the event handler code (only a few bytes to hold the closure) will never deregistered be collected unless the event is fired sometime after the owner object has been collected. This can be fixed by using a NotifyingWeakReference (a weak reference that raises an event when it has been collected).
The helmet doesn't prove that outside influence is unnecessary. But it does prove that a supernatural influence is unnecessary.
It's like how we can now show that there is a scientific explanation for thunder. An angry yelling God as an explanation for thunder becomes ridiculous in the light of scientic reasoning.
If for example I had a "taste box" that made everything taste like chocolate...it doesn't prove that nothing exists that tastes of chocolate.
No, but chocolate isn't supernatural. What this proved is that something "supernatural" like God isn't a required explanation. A simple chemical imbalance or "helmet" can explain feelings that otherwise would have been attributed to the paranormal.
Erm, 4440000 seconds is just over 51 days.
Since you have an HTPC, you can use an XBOX USB HD-DVD player combined with SlySoft AnyDVD to bypass the copy protection so you don't get all the annoying inbuilt advertising nor the HDCP hardware restrictions.
1) Build an HTPC with an XBOD USB HD-DVD drive (cheapest drive available).
2) Install SlySoft AnyDVD to disable content protection and HDCP requirements.
3) Enjoy your HiDef movies
Most Hi-Fi speakers use banana plugs which tend can get quite loose resulting in a worse contact connection than RCA jacks.
The DVD player's digital-analogue converter could be affected by variations in the input power. It seems very unlikely that that would be the case by simply changing the power cable!
Hey, guess what. The other day I had a process that stopped working. Thinking quickly, I figured out what was wrong and fixed it. Everyone was happy. Do I get a front page article too?
Yes. If you were running Vista.
One thing you'll definitely notice about hidef video is that text (like credits) look like computer rendered text rather than the blurry identifiably "video-looking" text you see on a DVD or standard def broadcast TV. It actually looks like you're watching a flash animation on a computer screen rather than MPEG2/4 compressed video. That's the kind of clarity you get. You can actually see individual stubbles on people when you have closeups. You'd be a fool to think that there was no improvement
Well actually, I have a 720p TV (Bravia 46" V series). It's hooked up to my custom built HTPC running Vista Media Center and I output using standard VGA cable. Analogue VGA cables handle 1360x768 perfectly fine and it actually looks better cause it won't go through the TV's "image enhancing" processor since the TV thinks it's only PC input (text vs video).
Hi-Def videos playing through the PC into the TV makes a world of a difference in clarity compared to DVD with a PAL cable (which looks like absolute crap). It's a black and white difference IMHO.
Everyone I've demonstrated the system to is wowed by the quality hidef video compared to standard def digital TV/DVD.
Try playing some 1080p or 720p movie trailers from apple.com on your computer monitor, and then try then non-hidef versions and tell me you don't notice a difference.
Are you ignorant or just a fool?
When people say "Iran" in this context they're talking about the Government, not the people. Up until the revolution in 1979, Iran was a friend and, as you might have noticed, many Iranians have attained high levels of respect and power in America.
Anyway, I'd say the US government has considered the Iranian government an enemy in one way or another since this happened.
I already made my choice: regular DVD is fine.
Spoken like someone who doesn't own a a hi-def television.
Interesting...would you go without google? Cause they're getting pretty close..
Are a lot of those kids immigrants by any chance? The reasons for why their parents are poor affects how the children turn out.
This material is highly biocompatible and has the nanostructure of artificial bone
WOW!
Nano material for making artficial bone has the nanostructure of artificial bones?
Next up, a mythical creature with the body of a horse and the face of a horse!
Did you actually read the article?
Actually provided the consumer as human being can view/listen to the content with their eyes/ears (in analog form obviously), the content itself is already cracked. for example, we can imagine that someone put an HD video camera in front of the LCD screen, and connect the line-in of a sound recorder to the 5.1/7.1 analog output of the BD player --- viola, all the contents are pirated!
Well duh. The whole point is to protect the digital content in its pure pristine quality. I don't think sony are trying to use blueray-drm to protect the content from analog piracy which happens all the time anyway.
That's why the GP was talking about cracking HDCP, although at that point you're still going to have to recompress the content which has already been decompressed for transmission across HDMI which may cause some loss of data but nothing compared to recording out of your analog (ew) output.
Yeah but Super Jesus (not to be confused with Fire Jesus or Raccoon Jesus -- and tanooki Jesus is right out) is built out of stone, the Eiffel tower is built out of metal (too lazy to look up the exact composition). Carving something out of stone is a lot harder than putting together pieces of metal. Especially carving something out of stone and ending up with a seven hundred ton statue. Compared to a giant metal stick.
It's built out of reenforced concrete with a stone facade. Hardly a wonder.
I can't believe you said that. You can't compare systems because they're all imperfect? We're not trying to identify perfection here, just which is better overall.
one of this makes me feel less strongly about these things - just depressed.
Instead of being depressed why not follow Mao, Pol Pot, etc. Kill all capitalists, intellectuals, anyone else who could threaten your "socialist paradise".
Have you thought that the reason socialism hasn't been "properly implemented" is because it can't be?
One day you might understand that the only way to have your the socialist paradise you yearn to masturbate over is to CONTROL people, and to deprive them of their individual liberty.
There is absolutely no reason why someone like you should dicatate to me what I may or may not do. I don't want you to tell me that I can't save up what meager resources I may have, use my creative talents to add value to them and then sell them to someone who wants it. You cannot elimiate inequality -- it is impossible. You can make everyone wear the same clothes, eat the same food, etc but there will always be someone who can use his brain, looks, whatever to make himself wealthier than other people.
I'm sure you feel really good about yourself that you are "depressed" about the world because of the evils of capitalism. Saying how depressed you and having a sense of loathing about your culture probably makes you feel less guilty. I advise you to use the system to your advantage. Work, earn money and then give that money to people who need it more than you. You could start by selling your computer and cancelling your internet connection (products of capitalism and totally unnecessary) and giving the money to the poor.
He complains about the new menu system in Vista Media Center which uses horizontal scrolling. This is not the first time I've heard this and I agree it does seem to be quite wasteful on a 4:3 display but on a 16:9 plasma/LCD (which people building HTPCs should seriously consider), it's fantastic. The same can be said about the vista wall of music interface which is an easy and visually impressive way to navigate music and movies if you have a 16:9 display.
MCE is probably the best product microsoft has written. It has a pretty interface reminiscent of something apple would design and it suprisingle stable. It does it it's designed for and it does it well.
Yes a runtime error. The point of generics is to save typing casts and to detect type errors at compile time, and Java and C# do this.
You seriously need to study what generics are. It is NOT for saving typing of casts.
Yes this is a good type system, because there is only one List class and it is generic, so of course a list will compare as itself. When you create a new List you aren't creating a new class you are constraining the type (a class is not a type).
Oh really? That's like saying there is only one class (Object) and java.lang.String is just an extension of that class. Almost every other language defines them as different types because they are. Java's type erasure hack for generics seems to have generated a lot of programmers who think that generics is to "save on writing casts". Ick.
Generics should help the programmer, not create more obstructions and busy-work as they do in C#.
It does, whilst still maintaining langauge correctness.
iow, changing C# to let programmers use the covariance and contravariance in generic types already supported by CLR, because the current state of C# where List !instanceof List is too restrictive? Congratulations you just proved my point that C# generics are a 'very narrow, rigid, confining'. Generics should help the programmer, not create more obstructions and busy-work as they do in C#.
It's restrictive in the sense that you can't cast Object into a String and expect it to work. Seriously. What is your background on programming languages?
CLR can't even inline methods over 32 instructions even in the tightest loop because of their mistakes (ie incapable of interpretation) whereas if it will be faster Java can inline methods 5+ calls deep into blocks of 10k or more code because it can. And the 'fix' is to make CLR even more complicated to optimize? Good luck with that one, Microsoft.
Wrong again. IL has been designed for JIT compilation from the start but that doesn't mean that you can't interpret IL efficiently by using an intermediate byte-code like representation. That's what Portable.NET/DotGNU (the project I work on) does.
Anyway, what and when to inline is up to the JIT compiler. The JVM has NO advantage and infact has to work harder to inline and there are huge hacks because of the lack of user-defined-structs for things like Point(X,Y). The Java JIT is a marvel of engineering, the optimisations are amazing compared to the current generation of