Absolutely beautifully structured article, Dave. Meaty, concise and far from contrived. Great job!
-
-
-
Thanks!
কথা-বার্তা শেষ
নতুন কথা-বার্তা -
-
-
I often return a leased array in a try/finally clause. I see you don't do this, is it because at the worst case this array still end up being collected anyway?
-
No it’s to show how hard it is to get it right.
কথা-বার্তা শেষ
নতুন কথা-বার্তা -
-
-
I need to reread, but the initial example showed using Stream.ReadAsync() and manually searching for newlines in the input. Why would someone do that instead of using StreamReader.ReadLineAsync()? I was pretty confused by this.
-
I got that feedback from one other person so far. Yes in general you would use StreamReader for convenience. There’s 2 ways to look at it, this simplifies how you’d implement StreamReader.ReadLineAsync or imagine it was another delimiter.
-
It might be useful to add a little callout to your post which mentions this so folks don't get distracted from the main point. This is great work though - I know what it's like to build a custom network protocol in .NET and wish I had this stuff a few years back! :)
কথা-বার্তা শেষ
নতুন কথা-বার্তা -
-
নতুন কথা-বার্তা
-
-
-
Hi David, thanks, fantastic article. I like especially how you describe the problems of the ProcessLinesAsync method and how it evolves throughout the post before you finally refactor it to use http://System.IO .Pipelines.
ধন্যবাদ। আপনার সময়রেখাকে আরো ভালো করে তুলতে টুইটার এটিকে ব্যবহার করবে। পূর্বাবস্থায়পূর্বাবস্থায়
-
-
-
Webpage design nit: when the link says "back to top" with an arrow, one should be able to click on the arrow, as well as the text. Without that, kinda unintuitive.
ধন্যবাদ। আপনার সময়রেখাকে আরো ভালো করে তুলতে টুইটার এটিকে ব্যবহার করবে। পূর্বাবস্থায়পূর্বাবস্থায়
-
-
-
Any love for named-pipes in there?
-
The "out of the box" experience doesn't include endpoints; there's a heated discussion right now on github about which endpoints to add to the BCL, but Stream seems likely (but unconfirmed). That would allow NamedPipeClientStream in a single step.
-
Thanks Marc, I appreciate your insight. We are moving a lot of internal HTTP requests to named pipes, hoping we get some better performance. I wrote my own named pipe server and client that can send large messages, was hoping this might replace that. :/
-
It is also pretty simple to hook up manually if you want bespoke endpoint handling (rather than using, for example, the Stream API). All options remain open to you.
-
Interesting, I'll check it out for sure. As good a developer as I think I am, I'm nowhere near yourself or the .NET team, so I would absolutely love to try this new component out. I notice the post talks about Core, is it restricted to that or available in Win Framework as well?
-
netstandard 1.3+, .net framework 4.6+, so: you should be fine! I have various custom endpoints I've been playing with if you need reference material
-
Awesome, thanks again Marc! If you have any info you can and want to share I am all ears. Obviously not your job, so no hard feelings if you don't want to, but I'd definitely appreciate it.
-
there's my last two blog posts (https://blog.marcgravell.com/2018/07/pipe-dreams-part-1.html …, https://blog.marcgravell.com/2018/07/pipe-dreams-part-2.html …), this: https://github.com/mgravell/Pipelines.Sockets.Unofficial/tree/master/src/Pipelines.Sockets.Unofficial … - and a large part of the "pipelines" branch of StackExchange.Redis (although that also contains a bunch of general 2.0 rework)
- 1টি আরও উত্তর
নতুন কথা-বার্তা -
-
-
when will we have a Pipelines-based API for a (non-System.Diagnostics.)Process class?
ধন্যবাদ। আপনার সময়রেখাকে আরো ভালো করে তুলতে টুইটার এটিকে ব্যবহার করবে। পূর্বাবস্থায়পূর্বাবস্থায়
-
লোড হতে বেশ কিছুক্ষণ সময় নিচ্ছে।
টুইটার তার ক্ষমতার বাইরে চলে গেছে বা কোনো সাময়িক সমস্যার সম্মুখীন হয়েছে আবার চেষ্টা করুন বা আরও তথ্যের জন্য টুইটারের স্থিতি দেখুন।
, Tennis Player, Father and Husband