socket servers in.NET should be written using the {Begin|End}{Accept|Send|Receive} Socket methods. These methods make usee of completion ports on Win2k and later (and assync-io on Mono) and are the recommended way to ensure scalability. the old Unix 'select' pattern is broken as far as scalability is concerned - even on Unix.
I've had a.NET app handle 100,000+ active TCP connections on a Win2k3 box without blinking an eye.
Just watch out for heap fragmentation caused by pinning your input buffers. It's best to preallocate them in blocks and reuse them when you can.
unfortunately, NCollection is vaporware.
another good source for C#v2 collections is Wintellect's Power Collections which seems to provide a good deal of what's missing.
this is true if the application (ie napster) isn't using the full capabilitie of DRM (which it currently doesn't, see below).
however, if it were, the decoded PCM stream that the sound card gets still would contain significant amounts of noise. it's up to the sound card to remove this noise in hardware. unless you're a trusted hardware vendor, microsoft won't tell you how to do this.
napster doesn't use this secure audio path mainly because nobody has sound cards that support it.
Ford: Look, I can't help what you may personally be filming in, but...
Zaphod: Computer!
Zaphod: Oh, no!
Computer: Hi there! This is Eddie your shipboard computer, and I'm feeling just great guys, and I know I'm just going to get a bundle of kicks out of any programme you care to run through me.
Zaphod: Computer, tell us again where we're filming today.
Computer: A real pleasure feller, we are currently in an old quarry on the legendary planet of Magrathea.
Ford: Proving nothing, I wouldn't trust that computer to speak my weight.
you're correct. but.NET does allow you to have many AppDomains in a single process, each running with different code access security permission sets. One AppDomain could be allowed to write to the local drive, whereas you could load code from the network and run it in an AppDomain that's not allowed to write locally (or only write to temporary storage), run unsafe code, or whatever, depending on the permissions you give it.
It's not built on IIS at all, it's built on an ISAPI.DLL called aspnet_isapi.dll. The code for this could be quickly adapted for any other platform (assuming it was open sourced/completed by MS).
Actully, it's not built on either. ASP.NET can easily be hosted natively within any process you like (including Cassini and Apache) without the need for wrapping the ISAPI dll.
If you run Java code in a sandbox then you're safe.
If you run.NET code in a sandbox then you're also safe.
What Gosling forgot to mention that while Java has a sandbox model,.NET also has a so-call 'Code Access Security' infrastructure that goes far beyond Java's simplistic 'app/applet' security.
sure, but what you're ignoring is the fact that the governmnt buys a T-bill from itself for the value of your taxes, sticks that t-bill in the drawer with your name on it, and then goes right ahead and spends your taxes on benifits.
There is no such thing as the SS surplus (trust fund, whatever you want to call it) - it's just an accounting slight-of-hand used by the government to fudge the books.
the taxes you pay don't get invested until you retire, they get collected and then immediately get spent buying benifits for the current set of retirees.
hollow-points are banned in warfare by Declaration III of the Hague Convention of 1899.
hollow-point rounds are readily available for common assault rifles (R223 & 762). as for suitability for hunting, well, people still hunt with bows precicely because it's harder. There's not much sport in hitting your prey from a mile away - you might as well be shooting at tin-cans.
but they do have the right not to be forced to take a loss.
I've had a .NET app handle 100,000+ active TCP connections on a Win2k3 box without blinking an eye.
Just watch out for heap fragmentation caused by pinning your input buffers. It's best to preallocate them in blocks and reuse them when you can.
unfortunately, NCollection is vaporware. another good source for C#v2 collections is Wintellect's Power Collections which seems to provide a good deal of what's missing.
however, if it were, the decoded PCM stream that the sound card gets still would contain significant amounts of noise. it's up to the sound card to remove this noise in hardware. unless you're a trusted hardware vendor, microsoft won't tell you how to do this.
napster doesn't use this secure audio path mainly because nobody has sound cards that support it.
Hang on, weren't most of Dr. Who & Blake's 7 filmed on location in quarries? Oh, wait... you're right...
does this mean we won't be able to tell the difference between talking to them and talking to real people?
Ford: Look, I can't help what you may personally be filming in, but...
Zaphod: Computer!
Zaphod: Oh, no!
Computer: Hi there! This is Eddie your shipboard computer, and I'm feeling just great guys, and I know I'm just going to get a bundle of kicks out of any programme you care to run through me.
Zaphod: Computer, tell us again where we're filming today.
Computer: A real pleasure feller, we are currently in an old quarry on the legendary planet of Magrathea.
Ford: Proving nothing, I wouldn't trust that computer to speak my weight.
i'm saying you don't need the ISAPI dll, you can just host and call ASP.NET directly.
for a semi-official answer, see this blog entry and its comments.
sounds like security by obscurity to me...
that's a good thing, right?
OH SHIT!!!
you're correct. but .NET does allow you to have many AppDomains in a single process, each running with different code access security permission sets. One AppDomain could be allowed to write to the local drive, whereas you could load code from the network and run it in an AppDomain that's not allowed to write locally (or only write to temporary storage), run unsafe code, or whatever, depending on the permissions you give it.
get a clue, your processor can ONLY execute "unsafe" code.
If you run .NET code in a sandbox then you're also safe.
What Gosling forgot to mention that while Java has a sandbox model, .NET also has a so-call 'Code Access Security' infrastructure that goes far beyond Java's simplistic 'app/applet' security.
that 1st program wasn't a web server by any chance, was it?
progman.exe in XP exists mainly to provide a DDE bridge so legacy programs' installers can put shortcuts in the start menu using the old (win3.1) API.
sure, but what you're ignoring is the fact that the governmnt buys a T-bill from itself for the value of your taxes, sticks that t-bill in the drawer with your name on it, and then goes right ahead and spends your taxes on benifits.
the taxes you pay don't get invested until you retire, they get collected and then immediately get spent buying benifits for the current set of retirees.
hollow-points are banned in warfare by Declaration III of the Hague Convention of 1899. hollow-point rounds are readily available for common assault rifles (R223 & 762). as for suitability for hunting, well, people still hunt with bows precicely because it's harder. There's not much sport in hitting your prey from a mile away - you might as well be shooting at tin-cans.
or here.
it makes the search use the database created by the index service (which scans files as they are added/modified).
what, like this?