JoshЖ 9,806 Posted February 16, 2012 Share Posted February 16, 2012 I was getting a reliable crash on GCCollect and finally traced the problem back to this. Never store externed C objects in a resizable array. Quote Link to post Share on other sites
Paul Thomas 26 Posted February 16, 2012 Share Posted February 16, 2012 Good catch. Quote Link to post Share on other sites
Canardian 7 Posted February 16, 2012 Share Posted February 16, 2012 Never use GC in first place. Quote Link to post Share on other sites
JoshЖ 9,806 Posted February 16, 2012 Author Share Posted February 16, 2012 That does seem to be where all BMX's troubles originate. Quote Link to post Share on other sites
Canardian 7 Posted February 16, 2012 Share Posted February 16, 2012 I wonder how many people are actively aware of the fact also that all BlitzMax programs will crash sometime killing your explorer.exe Desktop instance (the 1st explorer instance), and then you have to press Ctrl-Alt-Del and run explorer.exe to get back your Desktop. This is just ridiculous, but when you know it, it's not that big of a problem. GC is basically a way to hide programming errors and make them happen at random times, making debugging impossible. In C, the program crashez immediately and you REALLY have to fix your faulty code. That's one of the biggest benefits of non GC languages, like C. Quote Link to post Share on other sites
Paul Thomas 26 Posted February 16, 2012 Share Posted February 16, 2012 I've never had that happen. Quote Link to post Share on other sites
Canardian 7 Posted February 16, 2012 Share Posted February 16, 2012 I've had it on several computers with Windows XP. But it also needs some time to accumulate, so you need really to work on some serious game, and not just play for short time with a BMX program. Quote Link to post Share on other sites
macklebee 883 Posted February 16, 2012 Share Posted February 16, 2012 cool i would love to see mika's serious game in bmax... link please... Quote Link to post Share on other sites
Paul Thomas 26 Posted February 16, 2012 Share Posted February 16, 2012 I would imagine anyone who uses LE editor for a long period of time would have seen this happen and probably would have reported it. I also never had seen Flexman mention this before either. So, either no one has used the editor for a long period of time, or Flexman/NA never played their own games for a long period of time, or it's something you're doing. I will come back and post here if I see it happen. Quote Link to post Share on other sites
Marleys Ghost 112 Posted February 16, 2012 Share Posted February 16, 2012 I've never had that happen. no, not happened to me ... Quote Link to post Share on other sites
JoshЖ 9,806 Posted February 16, 2012 Author Share Posted February 16, 2012 Explorer.exe crashes randomly in Windows XP anyways. I notice it often hangs when copying more than a few megabytes of files. GC is basically a way to hide programming errors and make them happen at random times, making debugging impossible. In C, the program crashez immediately and you REALLY have to fix your faulty code. That's one of the biggest benefits of non GC languages, like C. Yep. Quote Link to post Share on other sites
Naughty Alien 224 Posted February 17, 2012 Share Posted February 17, 2012 GC is basically a way to hide programming errors and make them happen at random times, making debugging impossible. In C, the program crashez immediately and you REALLY have to fix your faulty code. That's one of the biggest benefits of non GC languages, like C. ..GC should not have to 'hide' anything of programming errors , if you code on clean and efficient way without trying to do esoteric things, what doesnt make sense for game you programming anyway.. Quote Link to post Share on other sites
Flexman 104 Posted February 21, 2012 Share Posted February 21, 2012 If I've learned anything from different languages over the years, they all let you screw up in wildly different ways. GC is just something to be aware of (there's even an example of bad practice in the manual). I tend to prefer fixed sizes for significant arrays anyway to minimise memory fragmentation. It's a luxury game programmers get that developers of middleware do not. But if you were making a general wall-chart on do's and dont's for BMX then Josh's thread title is a good candidate. Quote Link to post Share on other sites
Mumbles 32 Posted February 21, 2012 Share Posted February 21, 2012 I wonder how many people are actively aware of the fact also that all BlitzMax programs will crash sometime killing your explorer.exe Desktop instance (the 1st explorer instance), and then you have to press Ctrl-Alt-Del and run explorer.exe to get back your Desktop. I've never had explorer just crash randomly. I have had times where I've had to kill it in taskmgr, but I've found in such instances, wait 3 seconds and it seems to respawn itself. Since that involves less effort, I'll normally just wait for system to bring explorer back for me... (at least, I presume it's system doing it) Explorer.exe crashes randomly in Windows XP anyways. I notice it often hangs when copying more than a few megabytes of files. I think you might need a better antivirus - one where the on access scanning is less intrusive by the sounds of it. Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.