|
![](/i/fill.gif) |
On 18/09/2015 10:26 AM, scott wrote:
> C# crash? I think your C or C++ one would be far more likely to crash,
> unless in the hands of an experienced professional.
On the other hand, the Mono implementation of C# was some wonderful bugs.
Like an implementation of ConcurrentQueue that only works correctly if
used from one thread.
Or a bug where the implementation leaks process handles until you cannot
launch any more processes.
Or that wonderful one where after a while, the Mono runtime receives
SIGABRT for trying to map too many memory regions. What happens is that
as the garbage collector frees empty memory pages, the address space
slowly fragments, until you hit the maximum map limit. With a
compile-time switch (i.e., you have to recompile the entire Mono
platform from source), you can switch off free page releasing. At which
point the runtime instead crashes due to exhausting all available memory...
I particularly enjoyed the time we tried to put out a release, and we
have 3 versions of Mono to choose between, each one of which contained a
different show-stopping bug. That was a fun meeting.
...why no, I'm not bitter. Why do you ask? :-P
All of this, of course, has little to do with C# as such, and is all to
do with Mono specifically.
Post a reply to this message
|
![](/i/fill.gif) |