That's a damn good video guys, I'm going to have to watch that one again.
Some great discussion on gc, synchronous destruction, etc. Would love to see an extended discussion on that (memory leaks in gc environments,, scaling gc for large heaps or many cores, exception safety, gc for type safety, dealing with non-memory resources).
Also liked that you keep touching on early warning as a benefit. Could get into static vs dynamic, contracts or static analysis annotations and even the billion dollar mistake.
(I don't think anyone but Erik could have kept up with STL in this video, he's a machine!)
Are you saying Wait is triggered if the internal count is EVER zero? Such as the first lambda completing before the second time the main thread runs through the for loop?
If it triggers only if the count is currently zero, there shouldn't be a race becuase at the Wait the main thread has already added 1 for every element to be processed.
If I have multiple producers and one of them calls bc.CompleteAdding() wouldn't it be possible for the consumer to exit before the other consumers have finished their bc.Add() calls? Am I misunderstanding the behavior?
I don't think I've ever seen a video where I'm more sure that something important is being said without actually understanding in the slightest what it was.
I'm still bullish on message passing in the long term for a number of reasons. I find the Erlang world view (if not the details of the language) very appealing. And I systems like Singularity make me even more optimistic about it. I look at IOCP and see the
same sort of thing going on.
It might be interesting for a future video to "go deep" on how synchronization primitives work (right down to the opcodes). I'd like to know if we'll ever get to the point where hardware designers can no longer maintain cache coherency system wide.
It might also be interesting to look into how Second Life's new Mono based script engine handles massive parallelism. You could also touch on Erlang style processes and the way the CCR can leverage iterators.
Comments
Defrag Tools: #50 - WPT - Memory Analysis - Heap
I'm confused. As far as I know _alloca allocates memory on the stack, not the heap...
Checking In: Stephan T. Lavavej - Inside STL (the person, not the library)
That's a damn good video guys, I'm going to have to watch that one again.
Some great discussion on gc, synchronous destruction, etc. Would love to see an extended discussion on that (memory leaks in gc environments,, scaling gc for large heaps or many cores, exception safety, gc for type safety, dealing with non-memory resources).
Also liked that you keep touching on early warning as a benefit. Could get into static vs dynamic, contracts or static analysis annotations and even the billion dollar mistake.
(I don't think anyone but Erik could have kept up with STL in this video, he's a machine!)
Checking In: Eric Lippert - On Compiler Evolution, Designing C# and Blogging
Good video! Always like to hear from Eric and/or Erik.
And I for one miss Chris Brumme's blog: http://blogs.msdn.com/b/cbrumme/archive/2003/05/17/51445.aspx
Kinda reminds me of something Joe Duffy posted: http://www.bluebytesoftware.com/blog/2010/12/04/SayonaraVolatile.aspx
(Wonder why he hasn't posted recently either...)
Erik Meijer: Rx in 15 Minutes - Rx is Here!!!!!
Could you (would you) use RX for file or socket I/O?
If so how would you compare it to IO Completion Ports?
The .NET4 Countdown Synchronization Primitive
Are you saying Wait is triggered if the internal count is EVER zero? Such as the first lambda completing before the second time the main thread runs through the for loop?
If it triggers only if the count is currently zero, there shouldn't be a race becuase at the Wait the main thread has already added 1 for every element to be processed.
BlockingCollection<T> Demonstration in Producer-Consumer Scenarios
If I have multiple producers and one of them calls bc.CompleteAdding() wouldn't it be possible for the consumer to exit before the other consumers have finished their bc.Add() calls? Am I misunderstanding the behavior?
E2E: Erik Meijer and Don Box - Perspectives on SOAP, Programming Data and M
XML is proof the universe hates us.
Expert to Expert: Rich Hickey and Brian Beckman - Inside Clojure
Nice stuff. I like the deep language design topics.
For those that might be interested....
Clojure for Java Programmers
http://clojure.blip.tv/file/982823/
Expert to Expert: Web Programming, JavaScript with Types and Flapjax
I don't think I've ever seen a video where I'm more sure that something important is being said without actually understanding in the slightest what it was.
Vance Morrison: CLR Through the Years
Top notch work guys. I need to watch this one again.
Expert to Expert - Joe Duffy: Perspectives on Concurrent Programming and Parallelism
I'm still bullish on message passing in the long term for a number of reasons. I find the Erlang world view (if not the details of the language) very appealing. And I systems like Singularity make me even more optimistic about it. I look at IOCP and see the same sort of thing going on.
It might be interesting for a future video to "go deep" on how synchronization primitives work (right down to the opcodes). I'd like to know if we'll ever get to the point where hardware designers can no longer maintain cache coherency system wide.
It might also be interesting to look into how Second Life's new Mono based script engine handles massive parallelism. You could also touch on Erlang style processes and the way the CCR can leverage iterators.
I need a coffee.