{"id":55903,"date":"2010-06-21T17:10:00","date_gmt":"2010-06-21T17:10:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/pfxteam\/2010\/06\/21\/plinqs-ordering-model\/"},"modified":"2010-06-21T17:10:00","modified_gmt":"2010-06-21T17:10:00","slug":"plinqs-ordering-model","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/dotnet\/plinqs-ordering-model\/","title":{"rendered":"PLINQ\u2019s Ordering Model"},"content":{"rendered":"<p><span class=\"BasicHeadlinesDescLabelCssClass\">In order to execute parallel queries as efficiently as possible, Parallel LINQ (PLINQ) treats ordering as optional. By default, PLINQ&nbsp;considers&nbsp;sequences to be&nbsp;unordered, unless the user explicitly opts into maintaining ordering using either the AsOrdered or&nbsp;the OrderBy operator.<\/span><\/p>\n<p><span class=\"BasicHeadlinesDescLabelCssClass\">Roy Patrick Tan wrote a detailed article that explains the precise ordering guarantees made by PLINQ for various types of queries: <a href=\"https:\/\/services.social.microsoft.com\/feeds\/FeedItem?feedId=639a99a9-ff25-4062-b61d-a86ea9d66a06&amp;itemId=876c55eb-11fb-41c9-a7a5-91b9a800c2b5&amp;title=PLINQ%e2%80%99s+Ordering+Model&amp;uri=http%3a%2f%2fdownload.microsoft.com%2fdownload%2fB%2fC%2fF%2fBCFD4868-1354-45E3-B71B-B851CD78733D%2fPLINQOrderingModel.pdf&amp;k=jkKQ57Rqx%2btFJ5txpuNlR7Rs6nNqbLxhsxGJMlBSnmU%3d\">PLINQ&rsquo;s Ordering Model<\/a><\/span><\/p>\n<p>(This paper and many more are available through the Parallel Computing Developer Center on MSDN at <a href=\"http:\/\/msdn.microsoft.com\/en-us\/concurrency\/ee851578.aspx\">http:\/\/msdn.microsoft.com\/en-us\/concurrency\/ee851578.aspx<\/a>.)<\/p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In order to execute parallel queries as efficiently as possible, Parallel LINQ (PLINQ) treats ordering as optional. By default, PLINQ&nbsp;considers&nbsp;sequences to be&nbsp;unordered, unless the user explicitly opts into maintaining ordering using either the AsOrdered or&nbsp;the OrderBy operator. Roy Patrick Tan wrote a detailed article that explains the precise ordering guarantees made by PLINQ for various [&hellip;]<\/p>\n","protected":false},"author":481,"featured_media":58792,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[7908],"tags":[7907,7922,7909,7910],"class_list":["post-55903","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-pfxteam","tag-net-4","tag-article-summary","tag-parallel-extensions","tag-plinq"],"acf":[],"blog_post_summary":"<p>In order to execute parallel queries as efficiently as possible, Parallel LINQ (PLINQ) treats ordering as optional. By default, PLINQ&nbsp;considers&nbsp;sequences to be&nbsp;unordered, unless the user explicitly opts into maintaining ordering using either the AsOrdered or&nbsp;the OrderBy operator. Roy Patrick Tan wrote a detailed article that explains the precise ordering guarantees made by PLINQ for various [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/55903","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/users\/481"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/comments?post=55903"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/posts\/55903\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media\/58792"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/media?parent=55903"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/categories?post=55903"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/dotnet\/wp-json\/wp\/v2\/tags?post=55903"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}