| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811 |
- <?xml version="1.0"?>
- <doc>
- <assembly>
- <name>System.Threading</name>
- </assembly>
- <members>
- <member name="T:System.Diagnostics.Contracts.Contract">
- <summary>
- A stub version of .NET 4.0 contracts.
- </summary>
- </member>
- <member name="T:System.Environment2">
- <summary>
- A dummy class that implements GetResourceString. Environment.GetResourceString(string) is an internal
- method in mscorlib.dll.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.IThreadPoolWorkItem">
- <summary>
- An interface similar to the one added in .NET 4.0.
- </summary>
- </member>
- <member name="T:System.Threading.Monitor2">
- <summary>
- .NET 4.0 Monitor class supports new overloads that return a boolean value
- representing whether the lock was successfully taken or not. The return value
- is meant to be accurate even in the presence of thread aborts.
-
- Monitor2 implements these methods as simple wrappers over the .NET 3.5 methods,
- but without making the guarantees related to thread aborts.
- </summary>
- </member>
- <member name="T:System.Collections.Generic.Mscorlib_DictionaryDebugView`2">
- <summary>
- This internal class from mscorlib.dll is used by ConcurrentDictionary.
- </summary>
- </member>
- <member name="T:System.OperationCanceledException2">
- <summary>
- OperationCanceledException is changing from .NET 3.5 to .NET 4.0. To make Parallel Extensions work,
- we include the new version as OperationCanceledException2.
- </summary>
- </member>
- <member name="T:System.Threading.Platform">
- <summary>
- A convenience class for common platform-related logic.
- </summary>
- </member>
- <member name="P:System.Threading.Platform.ProcessorCount">
- <summary>
- Gets the number of available processors available to this process on the current machine.
- </summary>
- </member>
- <member name="T:System.SecuritySafeCriticalAttribute">
- <summary>
- A dummy replacement for the .NET 4.0 SecuritySafeCriticalAttribute. The dummy attribute makes the
- code compile, but we are likely losing the ability to be called from a partial trust environment.
- </summary>
- </member>
- <member name="T:System.Threading.StackCrawlMark2">
- <summary>
- A dummy replacement for the .NET internal class StackCrawlMark.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentDictionary`2">
- <summary>
- Represents a thread-safe collection of keys and values.
- </summary>
- <typeparam name="TKey">The type of the keys in the dictionary.</typeparam>
- <typeparam name="TValue">The type of the values in the dictionary.</typeparam>
- <remarks>
- All public and protected members of <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> are thread-safe and may be used
- concurrently from multiple threads.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- class that is empty, has the default concurrency level, has the default initial capacity, and
- uses the default comparer for the key type.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.#ctor(System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- class that is empty, has the specified concurrency level and capacity, and uses the default
- comparer for the key type.
- </summary>
- <param name="concurrencyLevel">The estimated number of threads that will update the
- <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> concurrently.</param>
- <param name="capacity">The initial number of elements that the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- can contain.</param>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="concurrencyLevel"/> is
- less than 1.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"> <paramref name="capacity"/> is less than
- 0.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- class that contains elements copied from the specified <see cref="T:System.Collections.IEnumerable{KeyValuePair{TKey,TValue}}"/>, has the default concurrency
- level, has the default initial capacity, and uses the default comparer for the key type.
- </summary>
- <param name="collection">The <see cref="T:System.Collections.IEnumerable{KeyValuePair{TKey,TValue}}"/> whose elements are copied to
- the new
- <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentException"><paramref name="collection"/> contains one or more
- duplicate keys.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- class that is empty, has the specified concurrency level and capacity, and uses the specified
- <see cref="T:System.Collections.Generic.IEqualityComparer{TKey}"/>.
- </summary>
- <param name="comparer">The <see cref="T:System.Collections.Generic.IEqualityComparer{TKey}"/>
- implementation to use when comparing keys.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference
- (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}},System.Collections.Generic.IEqualityComparer{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- class that contains elements copied from the specified <see cref="T:System.Collections.IEnumerable"/>, has the default concurrency level, has the default
- initial capacity, and uses the specified
- <see cref="T:System.Collections.Generic.IEqualityComparer{TKey}"/>.
- </summary>
- <param name="collection">The <see cref="T:System.Collections.IEnumerable{KeyValuePair{TKey,TValue}}"/> whose elements are copied to
- the new
- <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</param>
- <param name="comparer">The <see cref="T:System.Collections.Generic.IEqualityComparer{TKey}"/>
- implementation to use when comparing keys.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is a null reference
- (Nothing in Visual Basic). -or-
- <paramref name="comparer"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.#ctor(System.Int32,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{`0,`1}},System.Collections.Generic.IEqualityComparer{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- class that contains elements copied from the specified <see cref="T:System.Collections.IEnumerable"/>,
- has the specified concurrency level, has the specified initial capacity, and uses the specified
- <see cref="T:System.Collections.Generic.IEqualityComparer{TKey}"/>.
- </summary>
- <param name="concurrencyLevel">The estimated number of threads that will update the
- <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> concurrently.</param>
- <param name="collection">The <see cref="T:System.Collections.IEnumerable{KeyValuePair{TKey,TValue}}"/> whose elements are copied to the new
- <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</param>
- <param name="comparer">The <see cref="T:System.Collections.Generic.IEqualityComparer{TKey}"/> implementation to use
- when comparing keys.</param>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="collection"/> is a null reference (Nothing in Visual Basic).
- -or-
- <paramref name="comparer"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="concurrencyLevel"/> is less than 1.
- </exception>
- <exception cref="T:System.ArgumentException"><paramref name="collection"/> contains one or more duplicate keys.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.#ctor(System.Int32,System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- class that is empty, has the specified concurrency level, has the specified initial capacity, and
- uses the specified <see cref="T:System.Collections.Generic.IEqualityComparer{TKey}"/>.
- </summary>
- <param name="concurrencyLevel">The estimated number of threads that will update the
- <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> concurrently.</param>
- <param name="capacity">The initial number of elements that the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- can contain.</param>
- <param name="comparer">The <see cref="T:System.Collections.Generic.IEqualityComparer{TKey}"/>
- implementation to use when comparing keys.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="concurrencyLevel"/> is less than 1. -or-
- <paramref name="capacity"/> is less than 0.
- </exception>
- <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference
- (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.TryAdd(`0,`1)">
- <summary>
- Attempts to add the specified key and value to the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.
- </summary>
- <param name="key">The key of the element to add.</param>
- <param name="value">The value of the element to add. The value can be a null reference (Nothing
- in Visual Basic) for reference types.</param>
- <returns>true if the key/value pair was added to the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- successfully; otherwise, false.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.OverflowException">The <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- contains too many elements.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.ContainsKey(`0)">
- <summary>
- Determines whether the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> contains the specified
- key.
- </summary>
- <param name="key">The key to locate in the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</param>
- <returns>true if the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> contains an element with
- the specified key; otherwise, false.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.TryRemove(`0,`1@)">
- <summary>
- Attempts to remove and return the the value with the specified key from the
- <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.
- </summary>
- <param name="key">The key of the element to remove and return.</param>
- <param name="value">When this method returns, <paramref name="value"/> contains the object removed from the
- <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> or the default value of <typeparamref name="TValue"/>
- if the operation failed.</param>
- <returns>true if an object was removed successfully; otherwise, false.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.TryRemoveInternal(`0,`1@,System.Boolean,`1)">
- <summary>
- Removes the specified key from the dictionary if it exists and returns its associated value.
- If matchValue flag is set, the key will be removed only if is associated with a particular
- value.
- </summary>
- <param name="key">The key to search for and remove if it exists.</param>
- <param name="value">The variable into which the removed value, if found, is stored.</param>
- <param name="matchValue">Whether removal of the key is conditional on its value.</param>
- <param name="oldValue">The conditional value to compare against if <paramref name="matchValue"/> is true</param>
- <returns></returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.TryGetValue(`0,`1@)">
- <summary>
- Attempts to get the value associated with the specified key from the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.
- </summary>
- <param name="key">The key of the value to get.</param>
- <param name="value">When this method returns, <paramref name="value"/> contains the object from
- the
- <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> with the spedified key or the default value of
- <typeparamref name="TValue"/>, if the operation failed.</param>
- <returns>true if the key was found in the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>;
- otherwise, false.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.TryUpdate(`0,`1,`1)">
- <summary>
- Compares the existing value for the specified key with a specified value, and if they’re equal,
- updates the key with a third value.
- </summary>
- <param name="key">The key whose value is compared with <paramref name="comparisonValue"/> and
- possibly replaced.</param>
- <param name="newValue">The value that replaces the value of the element with <paramref
- name="key"/> if the comparison results in equality.</param>
- <param name="comparisonValue">The value that is compared to the value of the element with
- <paramref name="key"/>.</param>
- <returns>true if the value with <paramref name="key"/> was equal to <paramref
- name="comparisonValue"/> and replaced with <paramref name="newValue"/>; otherwise,
- false.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null
- reference.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.Clear">
- <summary>
- Removes all keys and values from the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
- <summary>
- Copies the elements of the <see cref="T:System.Collections.Generic.ICollection"/> to an array of
- type <see cref="T:System.Collections.Generic.KeyValuePair{TKey,TValue}"/>, starting at the
- specified array index.
- </summary>
- <param name="array">The one-dimensional array of type <see
- cref="T:System.Collections.Generic.KeyValuePair{TKey,TValue}"/>
- that is the destination of the <see
- cref="T:System.Collections.Generic.KeyValuePair{TKey,TValue}"/> elements copied from the <see
- cref="T:System.Collections.ICollection"/>. The array must have zero-based indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying
- begins.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is less than
- 0.</exception>
- <exception cref="T:System.ArgumentException"><paramref name="index"/> is equal to or greater than
- the length of the <paramref name="array"/>. -or- The number of elements in the source <see
- cref="T:System.Collections.ICollection"/>
- is greater than the available space from <paramref name="index"/> to the end of the destination
- <paramref name="array"/>.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.ToArray">
- <summary>
- Copies the key and value pairs stored in the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> to a
- new array.
- </summary>
- <returns>A new array containing a snapshot of key and value pairs copied from the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.CopyToPairs(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
- <summary>
- Copy dictionary contents to an array - shared implementation between ToArray and CopyTo.
-
- Important: the caller must hold all locks in m_locks before calling CopyToPairs.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.CopyToEntries(System.Collections.DictionaryEntry[],System.Int32)">
- <summary>
- Copy dictionary contents to an array - shared implementation between ToArray and CopyTo.
-
- Important: the caller must hold all locks in m_locks before calling CopyToEntries.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.CopyToObjects(System.Object[],System.Int32)">
- <summary>
- Copy dictionary contents to an array - shared implementation between ToArray and CopyTo.
-
- Important: the caller must hold all locks in m_locks before calling CopyToObjects.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.GetEnumerator">
- <summary>Returns an enumerator that iterates through the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</summary>
- <returns>An enumerator for the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</returns>
- <remarks>
- The enumerator returned from the dictionary is safe to use concurrently with
- reads and writes to the dictionary, however it does not represent a moment-in-time snapshot
- of the dictionary. The contents exposed through the enumerator may contain modifications
- made to the dictionary after <see cref="M:System.Collections.Concurrent.ConcurrentDictionary`2.GetEnumerator"/> was called.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.TryAddInternal(`0,`1,System.Boolean,System.Boolean,`1@)">
- <summary>
- Shared internal implementation for inserts and updates.
- If key exists, we always return false; and if updateIfExists == true we force update with value;
- If key doesn't exist, we always add value and return true;
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(`0,System.Func{`0,`1})">
- <summary>
- Adds a key/value pair to the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- if the key does not already exist.
- </summary>
- <param name="key">The key of the element to add.</param>
- <param name="valueFactory">The function used to generate a value for the key</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentNullException"><paramref name="valueFactory"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.OverflowException">The dictionary contains too many
- elements.</exception>
- <returns>The value for the key. This will be either the existing value for the key if the
- key is already in the dictionary, or the new value for the key as returned by valueFactory
- if the key was not in the dictionary.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(`0,`1)">
- <summary>
- Adds a key/value pair to the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- if the key does not already exist.
- </summary>
- <param name="key">The key of the element to add.</param>
- <param name="value">the value to be added, if the key does not already exist</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.OverflowException">The dictionary contains too many
- elements.</exception>
- <returns>The value for the key. This will be either the existing value for the key if the
- key is already in the dictionary, or the new value if the key was not in the dictionary.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.AddOrUpdate(`0,System.Func{`0,`1},System.Func{`0,`1,`1})">
- <summary>
- Adds a key/value pair to the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> if the key does not already
- exist, or updates a key/value pair in the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> if the key
- already exists.
- </summary>
- <param name="key">The key to be added or whose value should be updated</param>
- <param name="addValueFactory">The function used to generate a value for an absent key</param>
- <param name="updateValueFactory">The function used to generate a new value for an existing key
- based on the key's existing value</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentNullException"><paramref name="addValueFactory"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentNullException"><paramref name="updateValueFactory"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.OverflowException">The dictionary contains too many
- elements.</exception>
- <returns>The new value for the key. This will be either be the result of addValueFactory (if the key was
- absent) or the result of updateValueFactory (if the key was present).</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.AddOrUpdate(`0,`1,System.Func{`0,`1,`1})">
- <summary>
- Adds a key/value pair to the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> if the key does not already
- exist, or updates a key/value pair in the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> if the key
- already exists.
- </summary>
- <param name="key">The key to be added or whose value should be updated</param>
- <param name="addValue">The value to be added for an absent key</param>
- <param name="updateValueFactory">The function used to generate a new value for an existing key based on
- the key's existing value</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentNullException"><paramref name="updateValueFactory"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.OverflowException">The dictionary contains too many
- elements.</exception>
- <returns>The new value for the key. This will be either be the result of addValueFactory (if the key was
- absent) or the result of updateValueFactory (if the key was present).</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#Generic#IDictionary{TKey@TValue}#Add(`0,`1)">
- <summary>
- Adds the specified key and value to the <see cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/>.
- </summary>
- <param name="key">The object to use as the key of the element to add.</param>
- <param name="value">The object to use as the value of the element to add.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.OverflowException">The dictionary contains too many
- elements.</exception>
- <exception cref="T:System.ArgumentException">
- An element with the same key already exists in the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#Generic#IDictionary{TKey@TValue}#Remove(`0)">
- <summary>
- Removes the element with the specified key from the <see
- cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/>.
- </summary>
- <param name="key">The key of the element to remove.</param>
- <returns>true if the element is successfully remove; otherwise false. This method also returns
- false if
- <paramref name="key"/> was not found in the original <see
- cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/>.
- </returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#Add(System.Collections.Generic.KeyValuePair{`0,`1})">
- <summary>
- Adds the specified value to the <see cref="T:System.Collections.Generic.ICollection{TValue}"/>
- with the specified key.
- </summary>
- <param name="keyValuePair">The <see cref="T:System.Collections.Generic.KeyValuePair{TKey,TValue}"/>
- structure representing the key and value to add to the <see
- cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="keyValuePair"/> of <paramref
- name="keyValuePair"/> is null.</exception>
- <exception cref="T:System.OverflowException">The <see
- cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>
- contains too many elements.</exception>
- <exception cref="T:System.ArgumentException">An element with the same key already exists in the
- <see cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/></exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
- <summary>
- Determines whether the <see cref="T:System.Collections.Generic.ICollection{TKey,TValue}"/>
- contains a specific key and value.
- </summary>
- <param name="keyValuePair">The <see cref="T:System.Collections.Generic.KeyValuePair{TKey,TValue}"/>
- structure to locate in the <see
- cref="T:System.Collections.Generic.ICollection{TValue}"/>.</param>
- <returns>true if the <paramref name="keyValuePair"/> is found in the <see
- cref="T:System.Collections.Generic.ICollection{TKey,TValue}"/>; otherwise, false.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
- <summary>
- Removes a key and value from the dictionary.
- </summary>
- <param name="keyValuePair">The <see
- cref="T:System.Collections.Generic.KeyValuePair{TKey,TValue}"/>
- structure representing the key and value to remove from the <see
- cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>.</param>
- <returns>true if the key and value represented by <paramref name="keyValuePair"/> is successfully
- found and removed; otherwise, false.</returns>
- <exception cref="T:System.ArgumentNullException">The Key property of <paramref
- name="keyValuePair"/> is a null reference (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IEnumerable#GetEnumerator">
- <summary>Returns an enumerator that iterates through the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</summary>
- <returns>An enumerator for the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</returns>
- <remarks>
- The enumerator returned from the dictionary is safe to use concurrently with
- reads and writes to the dictionary, however it does not represent a moment-in-time snapshot
- of the dictionary. The contents exposed through the enumerator may contain modifications
- made to the dictionary after <see cref="M:System.Collections.Concurrent.ConcurrentDictionary`2.GetEnumerator"/> was called.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IDictionary#Add(System.Object,System.Object)">
- <summary>
- Adds the specified key and value to the dictionary.
- </summary>
- <param name="key">The object to use as the key.</param>
- <param name="value">The object to use as the value.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.OverflowException">The dictionary contains too many
- elements.</exception>
- <exception cref="T:System.ArgumentException">
- <paramref name="key"/> is of a type that is not assignable to the key type <typeparamref
- name="TKey"/> of the <see cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>. -or-
- <paramref name="value"/> is of a type that is not assignable to <typeparamref name="TValue"/>,
- the type of values in the <see cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>.
- -or- A value with the same key already exists in the <see
- cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>.
- </exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IDictionary#Contains(System.Object)">
- <summary>
- Gets whether the <see cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/> contains an
- element with the specified key.
- </summary>
- <param name="key">The key to locate in the <see
- cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/>.</param>
- <returns>true if the <see cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/> contains
- an element with the specified key; otherwise, false.</returns>
- <exception cref="T:System.ArgumentNullException"> <paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IDictionary#GetEnumerator">
- <summary>Provides an <see cref="T:System.Collections.Generics.IDictionaryEnumerator"/> for the
- <see cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/>.</summary>
- <returns>An <see cref="T:System.Collections.Generics.IDictionaryEnumerator"/> for the <see
- cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/>.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IDictionary#Remove(System.Object)">
- <summary>
- Removes the element with the specified key from the <see
- cref="T:System.Collections.IDictionary"/>.
- </summary>
- <param name="key">The key of the element to remove.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
- <summary>
- Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an array, starting
- at the specified array index.
- </summary>
- <param name="array">The one-dimensional array that is the destination of the elements copied from
- the <see cref="T:System.Collections.ICollection"/>. The array must have zero-based
- indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying
- begins.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is less than
- 0.</exception>
- <exception cref="T:System.ArgumentException"><paramref name="index"/> is equal to or greater than
- the length of the <paramref name="array"/>. -or- The number of elements in the source <see
- cref="T:System.Collections.ICollection"/>
- is greater than the available space from <paramref name="index"/> to the end of the destination
- <paramref name="array"/>.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.GrowTable(System.Collections.Concurrent.ConcurrentDictionary{`0,`1}.Node[])">
- <summary>
- Replaces the internal table with a larger one. To prevent multiple threads from resizing the
- table as a result of races, the table of buckets that was deemed too small is passed in as
- an argument to GrowTable(). GrowTable() obtains a lock, and then checks whether the bucket
- table has been replaced in the meantime or not.
- </summary>
- <param name="buckets">Reference to the bucket table that was deemed too small.</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.GetBucketAndLockNo(System.Int32,System.Int32@,System.Int32@,System.Int32)">
- <summary>
- Computes the bucket and lock number for a particular key.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.AcquireAllLocks(System.Int32@)">
- <summary>
- Acquires all locks for this hash table, and increments locksAcquired by the number
- of locks that were successfully acquired. The locks are acquired in an increasing
- order.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.AcquireLocks(System.Int32,System.Int32,System.Int32@)">
- <summary>
- Acquires a contiguous range of locks for this hash table, and increments locksAcquired
- by the number of locks that were successfully acquired. The locks are acquired in an
- increasing order.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.ReleaseLocks(System.Int32,System.Int32)">
- <summary>
- Releases a contiguous range of locks.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.GetKeys">
- <summary>
- Gets a collection containing the keys in the dictionary.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.GetValues">
- <summary>
- Gets a collection containing the values in the dictionary.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.Assert(System.Boolean)">
- <summary>
- A helper method for asserts.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.GetResource(System.String)">
- <summary>
- A helper function to obtain the string for a particular resource key.
- </summary>
- <param name="key"></param>
- <returns></returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.OnSerializing(System.Runtime.Serialization.StreamingContext)">
- <summary>
- Get the data array to be serialized
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentDictionary`2.OnDeserialized(System.Runtime.Serialization.StreamingContext)">
- <summary>
- Construct the dictionary from a previously seiralized one
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.Item(`0)">
- <summary>
- Gets or sets the value associated with the specified key.
- </summary>
- <param name="key">The key of the value to get or set.</param>
- <value>The value associated with the specified key. If the specified key is not found, a get
- operation throws a
- <see cref="T:Sytem.Collections.Generic.KeyNotFoundException"/>, and a set operation creates a new
- element with the specified key.</value>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.Collections.Generic.KeyNotFoundException">The property is retrieved and
- <paramref name="key"/>
- does not exist in the collection.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.Count">
- <summary>
- Gets the number of key/value pairs contained in the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.
- </summary>
- <exception cref="T:System.OverflowException">The dictionary contains too many
- elements.</exception>
- <value>The number of key/value paris contained in the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>.</value>
- <remarks>Count has snapshot semantics and represents the number of items in the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/>
- at the moment when Count was accessed.</remarks>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.IsEmpty">
- <summary>
- Gets a value that indicates whether the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> is empty.
- </summary>
- <value>true if the <see cref="T:System.Collections.Concurrent.ConcurrentDictionary`2"/> is empty; otherwise,
- false.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.Keys">
- <summary>
- Gets a collection containing the keys in the <see
- cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>.
- </summary>
- <value>An <see cref="T:System.Collections.Generic.ICollection{TKey}"/> containing the keys in the
- <see cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.Values">
- <summary>
- Gets a collection containing the values in the <see
- cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>.
- </summary>
- <value>An <see cref="T:System.Collections.Generic.ICollection{TValue}"/> containing the values in
- the
- <see cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#IsReadOnly">
- <summary>
- Gets a value indicating whether the dictionary is read-only.
- </summary>
- <value>true if the <see cref="T:System.Collections.Generic.ICollection{TKey,TValue}"/> is
- read-only; otherwise, false. For <see
- cref="T:System.Collections.Generic.Dictionary{TKey,TValue}"/>, this property always returns
- false.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IDictionary#IsFixedSize">
- <summary>
- Gets a value indicating whether the <see
- cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/> has a fixed size.
- </summary>
- <value>true if the <see cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/> has a
- fixed size; otherwise, false. For <see
- cref="T:System.Collections.Generic.ConcurrentDictionary{TKey,TValue}"/>, this property always
- returns false.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IDictionary#IsReadOnly">
- <summary>
- Gets a value indicating whether the <see
- cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/> is read-only.
- </summary>
- <value>true if the <see cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/> is
- read-only; otherwise, false. For <see
- cref="T:System.Collections.Generic.ConcurrentDictionary{TKey,TValue}"/>, this property always
- returns false.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IDictionary#Keys">
- <summary>
- Gets an <see cref="T:System.Collections.ICollection"/> containing the keys of the <see
- cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/>.
- </summary>
- <value>An <see cref="T:System.Collections.ICollection"/> containing the keys of the <see
- cref="T:System.Collections.Generic.IDictionary{TKey,TValue}"/>.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IDictionary#Values">
- <summary>
- Gets an <see cref="T:System.Collections.ICollection"/> containing the values in the <see
- cref="T:System.Collections.IDictionary"/>.
- </summary>
- <value>An <see cref="T:System.Collections.ICollection"/> containing the values in the <see
- cref="T:System.Collections.IDictionary"/>.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#IDictionary#Item(System.Object)">
- <summary>
- Gets or sets the value associated with the specified key.
- </summary>
- <param name="key">The key of the value to get or set.</param>
- <value>The value associated with the specified key, or a null reference (Nothing in Visual Basic)
- if <paramref name="key"/> is not in the dictionary or <paramref name="key"/> is of a type that is
- not assignable to the key type <typeparamref name="TKey"/> of the <see
- cref="T:System.Collections.Generic.ConcurrentDictionary{TKey,TValue}"/>.</value>
- <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentException">
- A value is being assigned, and <paramref name="key"/> is of a type that is not assignable to the
- key type <typeparamref name="TKey"/> of the <see
- cref="T:System.Collections.Generic.ConcurrentDictionary{TKey,TValue}"/>. -or- A value is being
- assigned, and <paramref name="key"/> is of a type that is not assignable to the value type
- <typeparamref name="TValue"/> of the <see
- cref="T:System.Collections.Generic.ConcurrentDictionary{TKey,TValue}"/>
- </exception>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#ICollection#IsSynchronized">
- <summary>
- Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is
- synchronized with the SyncRoot.
- </summary>
- <value>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized
- (thread safe); otherwise, false. For <see
- cref="T:System.Collections.Concurrent.ConcurrentDictionary{TKey,TValue}"/>, this property always
- returns false.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.System#Collections#ICollection#SyncRoot">
- <summary>
- Gets an object that can be used to synchronize access to the <see
- cref="T:System.Collections.ICollection"/>. This property is not supported.
- </summary>
- <exception cref="T:System.NotSupportedException">The SyncRoot property is not supported.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentDictionary`2.DefaultConcurrencyLevel">
- <summary>
- The number of concurrent writes for which to optimize by default.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentDictionary`2.Node">
- <summary>
- A node in a singly-linked list representing a particular hash table bucket.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentDictionary`2.DictionaryEnumerator">
- <summary>
- A private class to represent enumeration over the dictionary that implements the
- IDictionaryEnumerator interface.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentQueue`1">
- <summary>
- Represents a thread-safe first-in, first-out collection of objects.
- </summary>
- <typeparam name="T">Specifies the type of elements in the queue.</typeparam>
- <remarks>
- All public and protected members of <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/> are thread-safe and may be used
- concurrently from multiple threads.
- </remarks>
- </member>
- <member name="T:System.Collections.Concurrent.IProducerConsumerCollection`1">
- <summary>
- Defines methods to manipulate thread-safe collections intended for producer/consumer usage.
- </summary>
- <typeparam name="T">Specifies the type of elements in the collection.</typeparam>
- <remarks>
- All implementations of this interface must enable all members of this interface
- to be used concurrently from multiple threads.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.IProducerConsumerCollection`1.CopyTo(`0[],System.Int32)">
- <summary>
- Copies the elements of the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection`1"/> to
- an
- <see cref="T:System.Array"/>, starting at a specified index.
- </summary>
- <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of
- the elements copied from the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection`1"/>.
- The array must have zero-based indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying
- begins.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (Nothing in
- Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is less than
- zero.</exception>
- <exception cref="T:System.ArgumentException"><paramref name="index"/> is equal to or greater than the
- length of the <paramref name="array"/>
- -or- The number of elements in the source <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/> is greater than the
- available space from <paramref name="index"/> to the end of the destination <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:System.Collections.Concurrent.IProducerConsumerCollection`1.TryAdd(`0)">
- <summary>
- Attempts to add an object to the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection`1"/>.
- </summary>
- <param name="item">The object to add to the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection`1"/>.</param>
- <returns>true if the object was added successfully; otherwise, false.</returns>
- <exception cref="T:System.ArgumentException">The <paramref name="item"/> was invalid for this collection.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.IProducerConsumerCollection`1.TryTake(`0@)">
- <summary>
- Attempts to remove and return an object from the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection`1"/>.
- </summary>
- <param name="item">
- When this method returns, if the object was removed and returned successfully, <paramref name="item"/> contains the removed object. If no object was available to be removed, the value is
- unspecified.
- </param>
- <returns>true if an object was removed and returned successfully; otherwise, false.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.IProducerConsumerCollection`1.ToArray">
- <summary>
- Copies the elements contained in the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection`1"/> to a new array.
- </summary>
- <returns>A new array containing the elements copied from the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection`1"/>.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/> class.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.InitializeFromCollection(System.Collections.Generic.IEnumerable{`0})">
- <summary>
- Initializes the contents of the queue from an existing collection.
- </summary>
- <param name="collection">A collection from which to copy elements.</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>
- class that contains elements copied from the specified collection
- </summary>
- <param name="collection">The collection whose elements are copied to the new <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collection"/> argument is
- null.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.OnSerializing(System.Runtime.Serialization.StreamingContext)">
- <summary>
- Get the data array to be serialized
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.OnDeserialized(System.Runtime.Serialization.StreamingContext)">
- <summary>
- Construct the queue from a previously seiralized one
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
- <summary>
- Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular
- <see cref="T:System.Array"/> index.
- </summary>
- <param name="array">The one-dimensional <see cref="T:System.Array">Array</see> that is the
- destination of the elements copied from the
- <see cref="T:System.Collections.Concurrent.ConcurrentBag"/>. The <see cref="T:System.Array">Array</see> must have zero-based indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying
- begins.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (Nothing in
- Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is less than
- zero.</exception>
- <exception cref="T:System.ArgumentException">
- <paramref name="array"/> is multidimensional. -or-
- <paramref name="array"/> does not have zero-based indexing. -or-
- <paramref name="index"/> is equal to or greater than the length of the <paramref name="array"/>
- -or- The number of elements in the source <see cref="T:System.Collections.ICollection"/> is
- greater than the available space from <paramref name="index"/> to the end of the destination
- <paramref name="array"/>. -or- The type of the source <see cref="T:System.Collections.ICollection"/> cannot be cast automatically to the type of the
- destination <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.System#Collections#IEnumerable#GetEnumerator">
- <summary>
- Returns an enumerator that iterates through a collection.
- </summary>
- <returns>An <see cref="T:System.Collections.IEnumerator"/> that can be used to iterate through the collection.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.System#Collections#Concurrent#IProducerConsumerCollection{T}#TryAdd(`0)">
- <summary>
- Attempts to add an object to the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/>.
- </summary>
- <param name="item">The object to add to the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/>. The value can be a null
- reference (Nothing in Visual Basic) for reference types.
- </param>
- <returns>true if the object was added successfully; otherwise, false.</returns>
- <remarks>For <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>, this operation will always add the object to the
- end of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>
- and return true.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.System#Collections#Concurrent#IProducerConsumerCollection{T}#TryTake(`0@)">
- <summary>
- Attempts to remove and return an object from the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/>.
- </summary>
- <param name="item">
- When this method returns, if the operation was successful, <paramref name="item"/> contains the
- object removed. If no object was available to be removed, the value is unspecified.
- </param>
- <returns>true if an element was removed and returned succesfully; otherwise, false.</returns>
- <remarks>For <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>, this operation will attempt to remove the object
- from the beginning of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.ToArray">
- <summary>
- Copies the elements stored in the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/> to a new array.
- </summary>
- <returns>A new array containing a snapshot of elements copied from the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.ToList">
- <summary>
- Copies the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/> elements to a new <see cref="T:System.Collections.Generic.List{T}"/>.
- </summary>
- <returns>A new <see cref="T:System.Collections.Generic.List{T}"/> containing a snapshot of
- elements copied from the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.GetHeadTailPositions(System.Collections.Concurrent.ConcurrentQueue{`0}.Segment@,System.Collections.Concurrent.ConcurrentQueue{`0}.Segment@,System.Int32@,System.Int32@)">
- <summary>
- Store the position of the current head and tail positions.
- </summary>
- <param name="head">return the head segment</param>
- <param name="tail">return the tail segment</param>
- <param name="headLow">return the head offset</param>
- <param name="tailHigh">return the tail offset</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.CopyTo(`0[],System.Int32)">
- <summary>
- Copies the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/> elements to an existing one-dimensional <see cref="T:System.Array">Array</see>, starting at the specified array index.
- </summary>
- <param name="array">The one-dimensional <see cref="T:System.Array">Array</see> that is the
- destination of the elements copied from the
- <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>. The <see cref="T:System.Array">Array</see> must have zero-based
- indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying
- begins.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (Nothing in
- Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is less than
- zero.</exception>
- <exception cref="T:System.ArgumentException"><paramref name="index"/> is equal to or greater than the
- length of the <paramref name="array"/>
- -or- The number of elements in the source <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/> is greater than the
- available space from <paramref name="index"/> to the end of the destination <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.GetEnumerator">
- <summary>
- Returns an enumerator that iterates through the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.
- </summary>
- <returns>An enumerator for the contents of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.</returns>
- <remarks>
- The enumeration represents a moment-in-time snapshot of the contents
- of the queue. It does not reflect any updates to the collection after
- <see cref="M:System.Collections.Concurrent.ConcurrentQueue`1.GetEnumerator"/> was called. The enumerator is safe to use
- concurrently with reads from and writes to the queue.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.Enqueue(`0)">
- <summary>
- Adds an object to the end of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.
- </summary>
- <param name="item">The object to add to the end of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>. The value can be a null reference
- (Nothing in Visual Basic) for reference types.
- </param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.TryDequeue(`0@)">
- <summary>
- Attempts to remove and return the object at the beginning of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.
- </summary>
- <param name="result">
- When this method returns, if the operation was successful, <paramref name="result"/> contains the
- object removed. If no object was available to be removed, the value is unspecified.
- </param>
- <returns>true if an element was removed and returned from the beggining of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>
- succesfully; otherwise, false.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.TryPeek(`0@)">
- <summary>
- Attempts to return an object from the beginning of the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>
- without removing it.
- </summary>
- <param name="result">When this method returns, <paramref name="result"/> contains an object from
- the beginning of the <see cref="T:System.Collections.Concurrent.ConccurrentQueue{T}"/> or an
- unspecified value if the operation failed.</param>
- <returns>true if and object was returned successfully; otherwise, false.</returns>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentQueue`1.System#Collections#ICollection#IsSynchronized">
- <summary>
- Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is
- synchronized with the SyncRoot.
- </summary>
- <value>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized
- with the SyncRoot; otherwise, false. For <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>, this property always
- returns false.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentQueue`1.System#Collections#ICollection#SyncRoot">
- <summary>
- Gets an object that can be used to synchronize access to the <see
- cref="T:System.Collections.ICollection"/>. This property is not supported.
- </summary>
- <exception cref="T:System.NotSupportedException">The SyncRoot property is not supported.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentQueue`1.IsEmpty">
- <summary>
- Gets a value that indicates whether the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/> is empty.
- </summary>
- <value>true if the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/> is empty; otherwise, false.</value>
- <remarks>
- For determining whether the collection contains any items, use of this property is recommended
- rather than retrieving the number of items from the <see cref="P:System.Collections.Concurrent.ConcurrentQueue`1.Count"/> property and comparing it
- to 0. However, as this collection is intended to be accessed concurrently, it may be the case
- that another thread will modify the collection after <see cref="P:System.Collections.Concurrent.ConcurrentQueue`1.IsEmpty"/> returns, thus invalidating
- the result.
- </remarks>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentQueue`1.Count">
- <summary>
- Gets the number of elements contained in the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.
- </summary>
- <value>The number of elements contained in the <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1"/>.</value>
- <remarks>
- For determining whether the collection contains any items, use of the <see cref="P:System.Collections.Concurrent.ConcurrentQueue`1.IsEmpty"/>
- property is recommended rather than retrieving the number of items from the <see cref="P:System.Collections.Concurrent.ConcurrentQueue`1.Count"/>
- property and comparing it to 0.
- </remarks>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentQueue`1.Segment">
- <summary>
- private class for ConcurrentQueue.
- a queue is a linked list of small arrays, each node is called a segment.
- A segment contains an array, a pointer to the next segment, and m_low, m_high indices recording
- the first and last valid elements of the array.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.Segment.#ctor(System.Int64)">
- <summary>
- Create and initialize a segment with the specified index.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.Segment.UnsafeAdd(`0)">
- <summary>
- Add an element to the tail of the current segment
- exclusively called by ConcurrentQueue.InitializedFromCollection
- InitializeFromCollection is responsible to guaratee that there is no index overflow,
- and there is no contention
- </summary>
- <param name="value"></param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.Segment.UnsafeGrow">
- <summary>
- Create a new segment and append to the current one
- Does not update the m_tail pointer
- exclusively called by ConcurrentQueue.InitializedFromCollection
- InitializeFromCollection is responsible to guaratee that there is no index overflow,
- and there is no contention
- </summary>
- <returns>the reference to the new Segment</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.Segment.Grow(System.Collections.Concurrent.ConcurrentQueue{`0}.Segment@)">
- <summary>
- Create a new segment and append to the current one
- Update the m_tail pointer
- This method is called when there is no contention
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.Segment.TryAppend(`0,System.Collections.Concurrent.ConcurrentQueue{`0}.Segment@)">
- <summary>
- Try to append an element at the end of this segment.
- </summary>
- <param name="value">the element to append</param>
- <param name="tail">The tail.</param>
- <returns>true if the element is appended, false if the current segment is full</returns>
- <remarks>if appending the specified element succeeds, and after which the segment is full,
- then grow the segment</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.Segment.TryRemove(`0@,System.Collections.Concurrent.ConcurrentQueue{`0}.Segment@)">
- <summary>
- try to remove an element from the head of current segment
- </summary>
- <param name="result">The result.</param>
- <param name="head">The head.</param>
- <returns>return false only if the current segment is empty</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.Segment.TryPeek(`0@)">
- <summary>
- try to peek the current segment
- </summary>
- <param name="result">holds the return value of the element at the head position,
- value set to default(T) if there is no such an element</param>
- <returns>true if there are elements in the current segment, false otherwise</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentQueue`1.Segment.ToList(System.Int32,System.Int32)">
- <summary>
- Convert part or all of the current segment into a List
- </summary>
- <param name="start">the start position</param>
- <param name="end">the end position</param>
- <returns>the result list </returns>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentQueue`1.Segment.Next">
- <summary>
- return the next segment
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentQueue`1.Segment.IsEmpty">
- <summary>
- return true if the current segment is empty (doesn't have any element available to dequeue,
- false otherwise
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentQueue`1.Segment.Low">
- <summary>
- return the position of the head of the current segment
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentQueue`1.Segment.High">
- <summary>
- return the logical position of the tail of the current segment
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentStack`1">
- <summary>
- Represents a thread-safe last-in, first-out collection of objects.
- </summary>
- <typeparam name="T">Specifies the type of elements in the stack.</typeparam>
- <remarks>
- All public and protected members of <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> are thread-safe and may be used
- concurrently from multiple threads.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>
- class.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>
- class that contains elements copied from the specified collection
- </summary>
- <param name="collection">The collection whose elements are copied to the new <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collection"/> argument is
- null.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.InitializeFromCollection(System.Collections.Generic.IEnumerable{`0})">
- <summary>
- Initializes the contents of the stack from an existing collection.
- </summary>
- <param name="collection">A collection from which to copy elements.</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.OnSerializing(System.Runtime.Serialization.StreamingContext)">
- <summary>
- Get the data array to be serialized
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.OnDeserialized(System.Runtime.Serialization.StreamingContext)">
- <summary>
- Construct the stack from a previously seiralized one
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.Clear">
- <summary>
- Removes all objects from the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
- <summary>
- Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular
- <see cref="T:System.Array"/> index.
- </summary>
- <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of
- the elements copied from the
- <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>. The <see cref="T:System.Array"/> must
- have zero-based indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying
- begins.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (Nothing in
- Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is less than
- zero.</exception>
- <exception cref="T:System.ArgumentException">
- <paramref name="array"/> is multidimensional. -or-
- <paramref name="array"/> does not have zero-based indexing. -or-
- <paramref name="index"/> is equal to or greater than the length of the <paramref name="array"/>
- -or- The number of elements in the source <see cref="T:System.Collections.ICollection"/> is
- greater than the available space from <paramref name="index"/> to the end of the destination
- <paramref name="array"/>. -or- The type of the source <see cref="T:System.Collections.ICollection"/> cannot be cast automatically to the type of the
- destination <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.CopyTo(`0[],System.Int32)">
- <summary>
- Copies the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> elements to an existing one-dimensional <see cref="T:System.Array"/>, starting at the specified array index.
- </summary>
- <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of
- the elements copied from the
- <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>. The <see cref="T:System.Array"/> must have zero-based
- indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying
- begins.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (Nothing in
- Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is less than
- zero.</exception>
- <exception cref="T:System.ArgumentException"><paramref name="index"/> is equal to or greater than the
- length of the <paramref name="array"/>
- -or- The number of elements in the source <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> is greater than the
- available space from <paramref name="index"/> to the end of the destination <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.Push(`0)">
- <summary>
- Inserts an object at the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.
- </summary>
- <param name="item">The object to push onto the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>. The value can be
- a null reference (Nothing in Visual Basic) for reference types.
- </param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.PushRange(`0[])">
- <summary>
- Inserts multiple objects at the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> atomically.
- </summary>
- <param name="items">The objects to push onto the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="items"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <remarks>
- When adding multiple items to the stack, using PushRange is a more efficient
- mechanism than using <see cref="M:System.Collections.Concurrent.ConcurrentStack`1.Push(`0)"/> one item at a time. Additionally, PushRange
- guarantees that all of the elements will be added atomically, meaning that no other threads will
- be able to inject elements between the elements being pushed. Items at lower indices in
- the <paramref name="items"/> array will be pushed before items at higher indices.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.PushRange(`0[],System.Int32,System.Int32)">
- <summary>
- Inserts multiple objects at the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> atomically.
- </summary>
- <param name="items">The objects to push onto the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.</param>
- <param name="startIndex">The zero-based offset in <paramref name="items"/> at which to begin
- inserting elements onto the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.</param>
- <param name="count">The number of elements to be inserted onto the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="items"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex"/> or <paramref name="count"/> is negative. Or <paramref name="startIndex"/> is greater than or equal to the length
- of <paramref name="items"/>.</exception>
- <exception cref="T:System.ArgumentException"><paramref name="startIndex"/> + <paramref name="count"/> is
- greater than the length of <paramref name="items"/>.</exception>
- <remarks>
- When adding multiple items to the stack, using PushRange is a more efficient
- mechanism than using <see cref="M:System.Collections.Concurrent.ConcurrentStack`1.Push(`0)"/> one item at a time. Additionally, PushRange
- guarantees that all of the elements will be added atomically, meaning that no other threads will
- be able to inject elements between the elements being pushed. Items at lower indices in the
- <paramref name="items"/> array will be pushed before items at higher indices.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.PushCore(System.Collections.Concurrent.ConcurrentStack{`0}.Node,System.Collections.Concurrent.ConcurrentStack{`0}.Node)">
- <summary>
- Push one or many nodes into the stack, if head and tails are equal then push one node to the stack other wise push the list between head
- and tail to the stack
- </summary>
- <param name="head">The head pointer to the new list</param>
- <param name="tail">The tail pointer to the new list</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.ValidatePushPopRangeInput(`0[],System.Int32,System.Int32)">
- <summary>
- Local helper function to validate the Pop Push range methods input
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.System#Collections#Concurrent#IProducerConsumerCollection{T}#TryAdd(`0)">
- <summary>
- Attempts to add an object to the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/>.
- </summary>
- <param name="item">The object to add to the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/>. The value can be a null
- reference (Nothing in Visual Basic) for reference types.
- </param>
- <returns>true if the object was added successfully; otherwise, false.</returns>
- <remarks>For <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>, this operation
- will always insert the object onto the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>
- and return true.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.TryPeek(`0@)">
- <summary>
- Attempts to return an object from the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>
- without removing it.
- </summary>
- <param name="result">When this method returns, <paramref name="result"/> contains an object from
- the top of the <see cref="T:System.Collections.Concurrent.ConccurrentStack{T}"/> or an
- unspecified value if the operation failed.</param>
- <returns>true if and object was returned successfully; otherwise, false.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.TryPop(`0@)">
- <summary>
- Attempts to pop and return the object at the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.
- </summary>
- <param name="result">
- When this method returns, if the operation was successful, <paramref name="result"/> contains the
- object removed. If no object was available to be removed, the value is unspecified.
- </param>
- <returns>true if an element was removed and returned from the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>
- succesfully; otherwise, false.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.TryPopRange(`0[])">
- <summary>
- Attempts to pop and return multiple objects from the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>
- atomically.
- </summary>
- <param name="items">
- The <see cref="T:System.Array"/> to which objects popped from the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> will be added.
- </param>
- <returns>The number of objects successfully popped from the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> and inserted in
- <paramref name="items"/>.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="items"/> is a null argument (Nothing
- in Visual Basic).</exception>
- <remarks>
- When popping multiple items, if there is little contention on the stack, using
- TryPopRange can be more efficient than using <see cref="M:System.Collections.Concurrent.ConcurrentStack`1.TryPop(`0@)"/>
- once per item to be removed. Nodes fill the <paramref name="items"/>
- with the first node to be popped at the startIndex, the second node to be popped
- at startIndex + 1, and so on.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.TryPopRange(`0[],System.Int32,System.Int32)">
- <summary>
- Attempts to pop and return multiple objects from the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>
- atomically.
- </summary>
- <param name="items">
- The <see cref="T:System.Array"/> to which objects popped from the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> will be added.
- </param>
- <param name="startIndex">The zero-based offset in <paramref name="items"/> at which to begin
- inserting elements from the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.</param>
- <param name="count">The number of elements to be popped from top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> and inserted into <paramref name="items"/>.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="items"/> is a null reference
- (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="startIndex"/> or <paramref name="count"/> is negative. Or <paramref name="startIndex"/> is greater than or equal to the length
- of <paramref name="items"/>.</exception>
- <exception cref="T:System.ArgumentException"><paramref name="startIndex"/> + <paramref name="count"/> is
- greater than the length of <paramref name="items"/>.</exception>
- <remarks>
- When popping multiple items, if there is little contention on the stack, using
- TryPopRange can be more efficient than using <see cref="M:System.Collections.Concurrent.ConcurrentStack`1.TryPop(`0@)"/>
- once per item to be removed. Nodes fill the <paramref name="items"/>
- with the first node to be popped at the startIndex, the second node to be popped
- at startIndex + 1, and so on.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.TryPopCore(`0@)">
- <summary>
- Local helper function to Pop an item from the stack, slow path
- </summary>
- <param name="result">The popped item</param>
- <returns>True if succeeded, false otherwise</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.TryPopCore(System.Int32,System.Collections.Concurrent.ConcurrentStack{`0}.Node@)">
- <summary>
- Slow path helper for TryPop. This method assumes an initial attempt to pop an element
- has already occurred and failed, so it begins spinning right away.
- </summary>
- <param name="count">The number of items to pop.</param>
- <param name="poppedHead">
- When this method returns, if the pop succeeded, contains the removed object. If no object was
- available to be removed, the value is unspecified. This parameter is passed uninitialized.
- </param>
- <returns>True if an element was removed and returned; otherwise, false.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.CopyRemovedItems(System.Collections.Concurrent.ConcurrentStack{`0}.Node,`0[],System.Int32,System.Int32)">
- <summary>
- Local helper function to copy the poped elements into a given collection
- </summary>
- <param name="head">The head of the list to be copied</param>
- <param name="collection">The collection to place the popped items in</param>
- <param name="startIndex">the beginning of index of where to place the popped items</param>
- <param name="nodesCount">The number of nodes.</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.System#Collections#Concurrent#IProducerConsumerCollection{T}#TryTake(`0@)">
- <summary>
- Attempts to remove and return an object from the <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/>.
- </summary>
- <param name="item">
- When this method returns, if the operation was successful, <paramref name="item"/> contains the
- object removed. If no object was available to be removed, the value is unspecified.
- </param>
- <returns>true if an element was removed and returned succesfully; otherwise, false.</returns>
- <remarks>For <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>, this operation will attempt to pope the object at
- the top of the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.ToArray">
- <summary>
- Copies the items stored in the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> to a new array.
- </summary>
- <returns>A new array containing a snapshot of elements copied from the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.ToList">
- <summary>
- Returns an array containing a snapshot of the list's contents, using
- the target list node as the head of a region in the list.
- </summary>
- <returns>An array of the list's contents.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.GetEnumerator">
- <summary>
- Returns an enumerator that iterates through the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.
- </summary>
- <returns>An enumerator for the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.</returns>
- <remarks>
- The enumeration represents a moment-in-time snapshot of the contents
- of the stack. It does not reflect any updates to the collection after
- <see cref="M:System.Collections.Concurrent.ConcurrentStack`1.GetEnumerator"/> was called. The enumerator is safe to use
- concurrently with reads from and writes to the stack.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.System#Collections#IEnumerable#GetEnumerator">
- <summary>
- Returns an enumerator that iterates through a collection.
- </summary>
- <returns>An <see cref="T:System.Collections.IEnumerator"/> that can be used to iterate through
- the collection.</returns>
- <remarks>
- The enumeration represents a moment-in-time snapshot of the contents of the stack. It does not
- reflect any updates to the collection after
- <see cref="M:System.Collections.Concurrent.ConcurrentStack`1.GetEnumerator"/> was called. The enumerator is safe to use concurrently with reads
- from and writes to the stack.
- </remarks>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentStack`1.IsEmpty">
- <summary>
- Gets a value that indicates whether the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> is empty.
- </summary>
- <value>true if the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/> is empty; otherwise, false.</value>
- <remarks>
- For determining whether the collection contains any items, use of this property is recommended
- rather than retrieving the number of items from the <see cref="P:System.Collections.Concurrent.ConcurrentStack`1.Count"/> property and comparing it
- to 0. However, as this collection is intended to be accessed concurrently, it may be the case
- that another thread will modify the collection after <see cref="P:System.Collections.Concurrent.ConcurrentStack`1.IsEmpty"/> returns, thus invalidating
- the result.
- </remarks>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentStack`1.Count">
- <summary>
- Gets the number of elements contained in the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.
- </summary>
- <value>The number of elements contained in the <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>.</value>
- <remarks>
- For determining whether the collection contains any items, use of the <see cref="P:System.Collections.Concurrent.ConcurrentStack`1.IsEmpty"/>
- property is recommended rather than retrieving the number of items from the <see cref="P:System.Collections.Concurrent.ConcurrentStack`1.Count"/>
- property and comparing it to 0.
- </remarks>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentStack`1.System#Collections#ICollection#IsSynchronized">
- <summary>
- Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is
- synchronized with the SyncRoot.
- </summary>
- <value>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized
- with the SyncRoot; otherwise, false. For <see cref="T:System.Collections.Concurrent.ConcurrentStack`1"/>, this property always
- returns false.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentStack`1.System#Collections#ICollection#SyncRoot">
- <summary>
- Gets an object that can be used to synchronize access to the <see
- cref="T:System.Collections.ICollection"/>. This property is not supported.
- </summary>
- <exception cref="T:System.NotSupportedException">The SyncRoot property is not supported</exception>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentStack`1.Node">
- <summary>
- A simple (internal) node type used to store elements of concurrent stacks and queues.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentStack`1.Node.#ctor(`0)">
- <summary>
- Constructs a new node with the specified value and no next node.
- </summary>
- <param name="value">The value of the node.</param>
- </member>
- <member name="T:System.Collections.Concurrent.SystemCollectionsConcurrent_ProducerConsumerCollectionDebugView`1">
- <summary>
- A debugger view of the IProducerConsumerCollection that makes it simple to browse the
- collection's contents at a point in time.
- </summary>
- <typeparam name="T">The type of elements stored within.</typeparam>
- </member>
- <member name="M:System.Collections.Concurrent.SystemCollectionsConcurrent_ProducerConsumerCollectionDebugView`1.#ctor(System.Collections.Concurrent.IProducerConsumerCollection{`0})">
- <summary>
- Constructs a new debugger view object for the provided collection object.
- </summary>
- <param name="collection">A collection to browse in the debugger.</param>
- </member>
- <member name="P:System.Collections.Concurrent.SystemCollectionsConcurrent_ProducerConsumerCollectionDebugView`1.Items">
- <summary>
- Returns a snapshot of the underlying collection's elements.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.OrderablePartitioner`1">
- <summary>
- Represents a particular manner of splitting an orderable data source into multiple partitions.
- </summary>
- <typeparam name="TSource">Type of the elements in the collection.</typeparam>
- <remarks>
- <para>
- Each element in each partition has an integer index associated with it, which determines the relative
- order of that element against elements in other partitions.
- </para>
- <para>
- Inheritors of <see cref="T:System.Collections.Concurrent.OrderablePartitioner`1"/> must adhere to the following rules:
- <ol>
- <li>All indices must be unique, such that there may not be duplicate indices. If all indices are not
- unique, the output ordering may be scrambled.</li>
- <li>All indices must be non-negative. If any indices are negative, consumers of the implementation
- may throw exceptions.</li>
- <li><see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetPartitions(System.Int32)"/> and <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderablePartitions(System.Int32)"/> should throw a
- <see cref="T:System.ArgumentOutOfRangeException"/> if the requested partition count is less than or
- equal to zero.</li>
- <li><see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetPartitions(System.Int32)"/> and <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderablePartitions(System.Int32)"/> should always return a number
- of enumerables equal to the requested partition count. If the partitioner runs out of data and cannot
- create as many partitions as requested, an empty enumerator should be returned for each of the
- remaining partitions. If this rule is not followed, consumers of the implementation may throw a <see cref="T:System.InvalidOperationException"/>.</li>
- <li><see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetPartitions(System.Int32)"/>, <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderablePartitions(System.Int32)"/>,
- <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetDynamicPartitions"/>, and <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderableDynamicPartitions"/>
- should never return null. If null is returned, a consumer of the implementation may throw a
- <see cref="T:System.InvalidOperationException"/>.</li>
- <li><see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetPartitions(System.Int32)"/>, <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderablePartitions(System.Int32)"/>,
- <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetDynamicPartitions"/>, and <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderableDynamicPartitions"/>
- should always return partitions that can fully and uniquely enumerate the input data source. All of
- the data and only the data contained in the input source should be enumerated, with no duplication
- that was not already in the input, unless specifically required by the particular partitioner's
- design. If this is not followed, the output ordering may be scrambled.</li>
- <li>If <see cref="P:System.Collections.Concurrent.OrderablePartitioner`1.KeysOrderedInEachPartition"/> returns true, each partition must return elements
- with increasing key indices.</li>
- <li>If <see cref="P:System.Collections.Concurrent.OrderablePartitioner`1.KeysOrderedAcrossPartitions"/> returns true, all the keys in partition numbered N
- must be larger than all the keys in partition numbered N-1.</li>
- <li>If <see cref="P:System.Collections.Concurrent.OrderablePartitioner`1.KeysNormalized"/> returns true, all indices must be monotonically increasing from
- 0, though not necessarily within a single partition.</li>
- </ol>
- </para>
- </remarks>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner`1">
- <summary>
- Represents a particular manner of splitting a data source into multiple partitions.
- </summary>
- <typeparam name="TSource">Type of the elements in the collection.</typeparam>
- <remarks>
- <para>
- Inheritors of <see cref="T:System.Collections.Concurrent.Partitioner`1"/> must adhere to the following rules:
- <ol>
- <li><see cref="M:System.Collections.Concurrent.Partitioner`1.GetPartitions(System.Int32)"/> should throw a
- <see cref="T:System.ArgumentOutOfRangeException"/> if the requested partition count is less than or
- equal to zero.</li>
- <li><see cref="M:System.Collections.Concurrent.Partitioner`1.GetPartitions(System.Int32)"/> should always return a number of enumerables equal to the requested
- partition count. If the partitioner runs out of data and cannot create as many partitions as
- requested, an empty enumerator should be returned for each of the remaining partitions. If this rule
- is not followed, consumers of the implementation may throw a <see cref="T:System.InvalidOperationException"/>.</li>
- <li><see cref="M:System.Collections.Concurrent.Partitioner`1.GetPartitions(System.Int32)"/> and <see cref="M:System.Collections.Concurrent.Partitioner`1.GetDynamicPartitions"/>
- should never return null. If null is returned, a consumer of the implementation may throw a
- <see cref="T:System.InvalidOperationException"/>.</li>
- <li><see cref="M:System.Collections.Concurrent.Partitioner`1.GetPartitions(System.Int32)"/> and <see cref="M:System.Collections.Concurrent.Partitioner`1.GetDynamicPartitions"/> should always return
- partitions that can fully and uniquely enumerate the input data source. All of the data and only the
- data contained in the input source should be enumerated, with no duplication that was not already in
- the input, unless specifically required by the particular partitioner's design. If this is not
- followed, the output ordering may be scrambled.</li>
- </ol>
- </para>
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner`1.GetPartitions(System.Int32)">
- <summary>
- Partitions the underlying collection into the given number of partitions.
- </summary>
- <param name="partitionCount">The number of partitions to create.</param>
- <returns>A list containing <paramref name="partitionCount"/> enumerators.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner`1.GetDynamicPartitions">
- <summary>
- Creates an object that can partition the underlying collection into a variable number of
- partitions.
- </summary>
- <remarks>
- <para>
- The returned object implements the <see cref="T:System.Collections.Generic.IEnumerable{TSource}"/> interface. Calling <see cref="M:System.Collections.Generic.IEnumerable`1.GetEnumerator">GetEnumerator</see> on the
- object creates another partition over the sequence.
- </para>
- <para>
- The <see cref="M:System.Collections.Concurrent.Partitioner`1.GetDynamicPartitions"/> method is only supported if the <see cref="P:System.Collections.Concurrent.Partitioner`1.SupportsDynamicPartitions"/>
- property returns true.
- </para>
- </remarks>
- <returns>An object that can create partitions over the underlying data source.</returns>
- <exception cref="T:System.NotSupportedException">Dynamic partitioning is not supported by this
- partitioner.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner`1.SupportsDynamicPartitions">
- <summary>
- Gets whether additional partitions can be created dynamically.
- </summary>
- <returns>
- true if the <see cref="T:System.Collections.Concurrent.Partitioner`1"/> can create partitions dynamically as they are
- requested; false if the <see cref="T:System.Collections.Concurrent.Partitioner`1"/> can only allocate
- partitions statically.
- </returns>
- <remarks>
- <para>
- If a derived class does not override and implement <see cref="M:System.Collections.Concurrent.Partitioner`1.GetDynamicPartitions"/>,
- <see cref="P:System.Collections.Concurrent.Partitioner`1.SupportsDynamicPartitions"/> should return false. The value of <see cref="P:System.Collections.Concurrent.Partitioner`1.SupportsDynamicPartitions"/> should not vary over the lifetime of this instance.
- </para>
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.OrderablePartitioner`1.#ctor(System.Boolean,System.Boolean,System.Boolean)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.OrderablePartitioner`1"/> class with the
- specified constraints on the index keys.
- </summary>
- <param name="keysOrderedInEachPartition">
- Indicates whether the elements in each partition are yielded in the order of
- increasing keys.
- </param>
- <param name="keysOrderedAcrossPartitions">
- Indicates whether elements in an earlier partition always come before
- elements in a later partition. If true, each element in partition 0 has a smaller order key than
- any element in partition 1, each element in partition 1 has a smaller order key than any element
- in partition 2, and so on.
- </param>
- <param name="keysNormalized">
- Indicates whether keys are normalized. If true, all order keys are distinct
- integers in the range [0 .. numberOfElements-1]. If false, order keys must still be dictinct, but
- only their relative order is considered, not their absolute values.
- </param>
- </member>
- <member name="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderablePartitions(System.Int32)">
- <summary>
- Partitions the underlying collection into the specified number of orderable partitions.
- </summary>
- <remarks>
- Each partition is represented as an enumerator over key-value pairs.
- The value of the pair is the element itself, and the key is an integer which determines
- the relative ordering of this element against other elements in the data source.
- </remarks>
- <param name="partitionCount">The number of partitions to create.</param>
- <returns>A list containing <paramref name="partitionCount"/> enumerators.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderableDynamicPartitions">
- <summary>
- Creates an object that can partition the underlying collection into a variable number of
- partitions.
- </summary>
- <remarks>
- <para>
- The returned object implements the <see cref="T:System.Collections.Generic.IEnumerable{TSource}"/> interface. Calling <see cref="M:System.Collections.Generic.IEnumerable`1.GetEnumerator">GetEnumerator</see> on the
- object creates another partition over the sequence.
- </para>
- <para>
- Each partition is represented as an enumerator over key-value pairs. The value in the pair is the element
- itself, and the key is an integer which determines the relative ordering of this element against
- other elements.
- </para>
- <para>
- The <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderableDynamicPartitions"/> method is only supported if the <see cref="P:System.Collections.Concurrent.Partitioner`1.SupportsDynamicPartitions">SupportsDynamicPartitions</see>
- property returns true.
- </para>
- </remarks>
- <returns>An object that can create partitions over the underlying data source.</returns>
- <exception cref="T:System.NotSupportedException">Dynamic partitioning is not supported by this
- partitioner.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.OrderablePartitioner`1.GetPartitions(System.Int32)">
- <summary>
- Partitions the underlying collection into the given number of ordered partitions.
- </summary>
- <remarks>
- The default implementation provides the same behavior as <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderablePartitions(System.Int32)"/> except
- that the returned set of partitions does not provide the keys for the elements.
- </remarks>
- <param name="partitionCount">The number of partitions to create.</param>
- <returns>A list containing <paramref name="partitionCount"/> enumerators.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.OrderablePartitioner`1.GetDynamicPartitions">
- <summary>
- Creates an object that can partition the underlying collection into a variable number of
- partitions.
- </summary>
- <remarks>
- <para>
- The returned object implements the <see cref="T:System.Collections.Generic.IEnumerable{TSource}"/> interface. Calling <see cref="M:System.Collections.Generic.IEnumerable`1.GetEnumerator">GetEnumerator</see> on the
- object creates another partition over the sequence.
- </para>
- <para>
- The default implementation provides the same behavior as <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetOrderableDynamicPartitions"/> except
- that the returned set of partitions does not provide the keys for the elements.
- </para>
- <para>
- The <see cref="M:System.Collections.Concurrent.OrderablePartitioner`1.GetDynamicPartitions"/> method is only supported if the <see cref="P:System.Collections.Concurrent.Partitioner`1.SupportsDynamicPartitions"/>
- property returns true.
- </para>
- </remarks>
- <returns>An object that can create partitions over the underlying data source.</returns>
- <exception cref="T:System.NotSupportedException">Dynamic partitioning is not supported by this
- partitioner.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.OrderablePartitioner`1.KeysOrderedInEachPartition">
- <summary>
- Gets whether elements in each partition are yielded in the order of increasing keys.
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.OrderablePartitioner`1.KeysOrderedAcrossPartitions">
- <summary>
- Gets whether elements in an earlier partition always come before elements in a later partition.
- </summary>
- <remarks>
- If <see cref="P:System.Collections.Concurrent.OrderablePartitioner`1.KeysOrderedAcrossPartitions"/> returns true, each element in partition 0 has a
- smaller order key than any element in partition 1, each element in partition 1 has a smaller
- order key than any element in partition 2, and so on.
- </remarks>
- </member>
- <member name="P:System.Collections.Concurrent.OrderablePartitioner`1.KeysNormalized">
- <summary>
- Gets whether order keys are normalized.
- </summary>
- <remarks>
- If <see cref="P:System.Collections.Concurrent.OrderablePartitioner`1.KeysNormalized"/> returns true, all order keys are distinct integers in the range
- [0 .. numberOfElements-1]. If the property returns false, order keys must still be dictinct, but
- only their relative order is considered, not their absolute values.
- </remarks>
- </member>
- <member name="T:System.Collections.Concurrent.OrderablePartitioner`1.EnumerableDropIndices">
- <summary>
- Converts an enumerable over key-value pairs to an enumerable over values.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner">
- <summary>
- Provides common partitioning strategies for arrays, lists, and enumerables.
- </summary>
- <remarks>
- <para>
- The static methods on <see cref="T:System.Collections.Concurrent.Partitioner"/> are all thread-safe and may be used concurrently
- from multiple threads. However, while a created partitioner is in use, the underlying data source
- should not be modified, whether from the same thread that's using a partitioner or from a separate
- thread.
- </para>
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.Create``1(System.Collections.Generic.IList{``0},System.Boolean)">
- <summary>
- Creates an orderable partitioner from an <see cref="T:System.Collections.Generic.IList`1"/>
- instance.
- </summary>
- <typeparam name="TSource">Type of the elements in source list.</typeparam>
- <param name="list">The list to be partitioned.</param>
- <param name="loadBalance">
- A Boolean value that indicates whether the created partitioner should dynamically
- load balance between partitions rather than statically partition.
- </param>
- <returns>
- An orderable partitioner based on the input list.
- </returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.Create``1(``0[],System.Boolean)">
- <summary>
- Creates an orderable partitioner from a <see cref="T:System.Array"/> instance.
- </summary>
- <typeparam name="TSource">Type of the elements in source array.</typeparam>
- <param name="array">The array to be partitioned.</param>
- <param name="loadBalance">
- A Boolean value that indicates whether the created partitioner should dynamically load balance
- between partitions rather than statically partition.
- </param>
- <returns>
- An orderable partitioner based on the input array.
- </returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.Create``1(System.Collections.Generic.IEnumerable{``0})">
- <summary>
- Creates an orderable partitioner from a <see cref="T:System.Collections.Generic.IEnumerable`1"/> instance.
- </summary>
- <typeparam name="TSource">Type of the elements in source enumerable.</typeparam>
- <param name="source">The enumerable to be partitioned.</param>
- <returns>
- An orderable partitioner based on the input array.
- </returns>
- <remarks>
- The ordering used in the created partitioner is determined by the natural order of the elements
- as retrieved from the source enumerable.
- </remarks>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumerator_Abstract`2">
- <summary>
- DynamicPartitionEnumerator_Abstract defines the enumerator for each partition for the dynamic load-balance
- partitioning algorithm.
- - Partition is an enumerator of KeyValuePairs, each corresponding to an item in the data source:
- the key is the index in the source collection; the value is the item itself.
- - a set of such partitions share a reader over data source. The type of the reader is specified by
- TSourceReader.
- - each partition requests a contiguous chunk of elements at a time from the source data. The chunk
- size is initially 1, and doubles every time until it reaches the maximum chunk size.
- The implementation for GrabNextChunk() method has two versions: one for data source of IndexRange
- types (IList and the array), one for data source of IEnumerable.
- - The method "Reset" is not supported for any partitioning algorithm.
- - The implementation for MoveNext() method is same for all dynanmic partitioners, so we provide it
- in this abstract class.
- </summary>
- <typeparam name="TSource">Type of the elements in the data source</typeparam>
- <typeparam name="TSourceReader">Type of the reader on the data source</typeparam>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumerator_Abstract`2.GrabNextChunk(System.Int32)">
- <summary>
- Abstract method to request a contiguous chunk of elements from the source collection
- </summary>
- <param name="requestedChunkSize">specified number of elements requested</param>
- <returns>
- true if we successfully reserved at least one element (up to #=requestedChunkSize)
- false if all elements in the source collection have been reserved.
- </returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumerator_Abstract`2.Dispose">
- <summary>
- Dispose is abstract, and depends on the type of the source data:
- - For source data type IList and Array, the type of the shared reader is just the dataitself.
- We don't do anything in Dispose method for IList and Array.
- - For source data type IEnumerable, the type of the shared reader is an enumerator we created.
- Thus we need to dispose this shared reader enumerator, when there is no more active partitions
- left.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumerator_Abstract`2.Reset">
- <summary>
- Reset on partitions is not supported
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumerator_Abstract`2.MoveNext">
- <summary>
- Moves to the next element if any.
- Try current chunk first, if the current chunk do not have any elements left, then we
- attempt to grab a chunk from the source collection.
- </summary>
- <returns>
- true if successfully moving to the next position;
- false otherwise, if and only if there is no more elements left in the current chunk
- AND the source collection is exhausted.
- </returns>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumerator_Abstract`2.HasNoElementsLeft">
- <summary>
- Abstract property, returns whether or not the shared reader has already read the last
- element of the source data
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumerator_Abstract`2.Current">
- <summary>
- Get the current element in the current partition. Property required by IEnumerator interface
- This property is abstract because the implementation is different depending on the type
- of the source data: IList, Array or IEnumerable
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumerator_Abstract`2.System#Collections#IEnumerator#Current">
- <summary>
- Get the current element in the current partition. Property required by IEnumerator interface
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIEnumerable`1">
- <summary>
- Inherits from DynamicPartitioners
- Provides customized implementation of GetOrderableDynamicPartitions_Factory method, to return an instance
- of EnumerableOfPartitionsForIEnumerator defined internally
- </summary>
- <typeparam name="TSource">Type of elements in the source data</typeparam>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIEnumerable`1.GetOrderablePartitions(System.Int32)">
- <summary>
- Overrides OrderablePartitioner.GetOrderablePartitions.
- Partitions the underlying collection into the given number of orderable partitions.
- </summary>
- <param name="partitionCount">number of partitions requested</param>
- <returns>A list containing <paramref name="partitionCount"/> enumerators.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIEnumerable`1.GetOrderableDynamicPartitions">
- <summary>
- Overrides OrderablePartitioner.GetOrderableDyanmicPartitions
- </summary>
- <returns>a enumerable collection of orderable partitions</returns>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIEnumerable`1.SupportsDynamicPartitions">
- <summary>
- Whether additional partitions can be created dynamically.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIEnumerable`1.InternalPartitionEnumerable">
- <summary>
- Provides customized implementation for source data of IEnumerable
- Different from the counterpart for IList/Array, this enumerable maintains several additional fields
- shared by the partitions it owns, including a boolean "m_hasNoElementsLef", a shared lock, and a
- shared count "m_activePartitionCount"
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIEnumerable`1.InternalPartitionEnumerator">
- <summary>
- Inherits from DynamicPartitionEnumerator_Abstract directly
- Provides customized implementation for: GrabNextChunk, HasNoElementsLeft, Current, Dispose
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIEnumerable`1.InternalPartitionEnumerator.GrabNextChunk(System.Int32)">
- <summary>
- Reserves a contiguous range of elements from source data
- </summary>
- <param name="requestedChunkSize">specified number of elements requested</param>
- <returns>
- true if we successfully reserved at least one element (up to #=requestedChunkSize)
- false if all elements in the source collection have been reserved.
- </returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIEnumerable`1.InternalPartitionEnumerator.Dispose">
- <summary>
- If the current partition is to be disposed, we decrement the number of active partitions
- for the shared reader.
- If the number of active partitions becomes 0, we need to dispose the shared reader we created
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIEnumerable`1.InternalPartitionEnumerator.HasNoElementsLeft">
- <summary>
- Returns whether or not the shared reader has already read the last
- element of the source data
- </summary>
- <remarks>
- We cannot call m_sharedReader.MoveNext(), to see if it hits the last element
- or not, because we can't undo MoveNext(). Thus we need to maintain a shared
- boolean value m_hasNoElementsLeft across all partitions
- </remarks>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIndexRange_Abstract`2">
- <summary>
- Dynamic load-balance partitioner. This class is abstract and to be derived from by
- the customized partitioner classes for IList, Array, and IEnumerable
- </summary>
- <typeparam name="TSource">Type of the elements in the source data</typeparam>
- <typeparam name="TCollection"> Type of the source data collection</typeparam>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIndexRange_Abstract`2.#ctor(`1)">
- <summary>
- Constructs a new orderable partitioner
- </summary>
- <param name="data">source data collection</param>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIndexRange_Abstract`2.GetOrderableDynamicPartitions_Factory(`1)">
- <summary>
- Partition the source data and create an enumerable over the resulting partitions.
- </summary>
- <param name="data">the source data collection</param>
- <returns>an enumerable of partitions of </returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIndexRange_Abstract`2.GetOrderablePartitions(System.Int32)">
- <summary>
- Overrides OrderablePartitioner.GetOrderablePartitions.
- Partitions the underlying collection into the given number of orderable partitions.
- </summary>
- <param name="partitionCount">number of partitions requested</param>
- <returns>A list containing <paramref name="partitionCount"/> enumerators.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIndexRange_Abstract`2.GetOrderableDynamicPartitions">
- <summary>
- Overrides OrderablePartitioner.GetOrderableDyanmicPartitions
- </summary>
- <returns>a enumerable collection of orderable partitions</returns>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIndexRange_Abstract`2.SupportsDynamicPartitions">
- <summary>
- Whether additional partitions can be created dynamically.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumeratorForIndexRange_Abstract`2">
- <summary>
- Defines dynamic partition for source data of IList and Array.
- This class inherits DynamicPartitionEnumerator_Abstract
- - implements GrabNextChunk, HasNoElementsLeft, and Dispose methods for IList and Array
- - Current property still remains abstract, implementation is different for IList and Array
- - introduces another abstract method SourceCount, which returns the number of elements in
- the source data. Implementation differs for IList and Array
- </summary>
- <typeparam name="TSource">Type of the elements in the data source</typeparam>
- <typeparam name="TSourceReader">Type of the reader on the source data</typeparam>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumeratorForIndexRange_Abstract`2.GrabNextChunk(System.Int32)">
- <summary>
- Reserves a contiguous range of elements from source data
- </summary>
- <param name="requestedChunkSize">specified number of elements requested</param>
- <returns>
- true if we successfully reserved at least one element (up to #=requestedChunkSize)
- false if all elements in the source collection have been reserved.
- </returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumeratorForIndexRange_Abstract`2.Dispose">
- <summary>
- For source data type IList and Array, the type of the shared reader is just the data itself.
- We don't do anything in Dispose method for IList and Array.
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumeratorForIndexRange_Abstract`2.SourceCount">
- <summary>
- Get the number of elements from the source reader.
- It calls IList.Count or Array.Length
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.DynamicPartitionEnumeratorForIndexRange_Abstract`2.HasNoElementsLeft">
- <summary>
- Returns whether or not the shared reader has already read the last
- element of the source data
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIList`1">
- <summary>
- Inherits from DynamicPartitioners
- Provides customized implementation of GetOrderableDynamicPartitions_Factory method, to return an instance
- of EnumerableOfPartitionsForIList defined internally
- </summary>
- <typeparam name="TSource">Type of elements in the source data</typeparam>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIList`1.InternalPartitionEnumerable">
- <summary>
- Inherits from PartitionList_Abstract
- Provides customized implementation for source data of IList
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIList`1.InternalPartitionEnumerator">
- <summary>
- Inherits from DynamicPartitionEnumeratorForIndexRange_Abstract
- Provides customized implementation of SourceCount property and Current property for IList
- </summary>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.DynamicPartitionerForIList`1.InternalPartitionEnumerator.Current">
- <summary>
- return a KeyValuePair of the current element and its key
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForArray`1">
- <summary>
- Inherits from DynamicPartitioners
- Provides customized implementation of GetOrderableDynamicPartitions_Factory method, to return an instance
- of EnumerableOfPartitionsForArray defined internally
- </summary>
- <typeparam name="TSource">Type of elements in the source data</typeparam>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForArray`1.InternalPartitionEnumerable">
- <summary>
- Inherits from PartitionList_Abstract
- Provides customized implementation for source data of Array
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.DynamicPartitionerForArray`1.InternalPartitionEnumerator">
- <summary>
- Inherits from DynamicPartitionEnumeratorForIndexRange_Abstract
- Provides customized implementation of SourceCount property and Current property for Array
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.StaticIndexRangePartitioner`2">
- <summary>
- Static partitioning over IList.
- - dynamic and load-balance
- - Keys are ordered within each partition
- - Keys are ordered across partitions
- - Keys are normalized
- - Number of partitions is fixed once specified, and the elements of the source data are
- distributed to each partition as evenly as possible.
- </summary>
- <typeparam name="TSource">type of the elements</typeparam>
- <typeparam name="TCollection">Type of the source data collection</typeparam>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.StaticIndexRangePartitioner`2.CreatePartition(System.Int32,System.Int32)">
- <summary>
- Abstract method to create a partition that covers a range over source data,
- starting from "startIndex", ending at "endIndex"
- </summary>
- <param name="startIndex">start index of the current partition on the source data</param>
- <param name="endIndex">end index of the current partition on the source data</param>
- <returns>a partition enumerator over the specified range</returns>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.StaticIndexRangePartitioner`2.GetOrderablePartitions(System.Int32)">
- <summary>
- Overrides OrderablePartitioner.GetOrderablePartitions
- Return a list of partitions, each of which enumerate a fixed part of the source data
- The elements of the source data are distributed to each partition as evenly as possible.
- Specifically, if the total number of elements is N, and number of partitions is x, and N = a*x +b,
- where a is the quotient, and b is the remainder. Then the first b partitions each has a + 1 elements,
- and the last x-b partitions each has a elements.
- For example, if N=10, x =3, then
- partition 0 ranges [0,3],
- partition 1 ranges [4,6],
- partition 2 ranges [7,9].
- This also takes care of the situation of (x>N), the last x-N partitions are empty enumerators.
- An empty enumerator is indicated by
- (m_startIndex == list.Count && m_endIndex == list.Count -1)
- </summary>
- <param name="partitionCount">specified number of partitions</param>
- <returns>a list of partitions</returns>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.StaticIndexRangePartitioner`2.SourceCount">
- <summary>
- Abstract method to return the number of elements in the source data
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.StaticIndexRangePartition`1">
- <summary>
- Static Partition for IList/Array.
- This class implements all methods required by IEnumerator interface, except for the Current property.
- Current Property is different for IList and Array. Arrays calls 'ldelem' instructions for faster element
- retrieval.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.StaticIndexRangePartition`1.#ctor(System.Int32,System.Int32)">
- <summary>
- Constructs an instance of StaticIndexRangePartition
- </summary>
- <param name="startIndex">the start index in the source collection for the current partition </param>
- <param name="endIndex">the end index in the source collection for the current partition</param>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.StaticIndexRangePartition`1.Dispose">
- <summary>
- We don't dispose the source for IList and array
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.Partitioner.StaticIndexRangePartition`1.MoveNext">
- <summary>
- Moves to the next item
- Before the first MoveNext is called: m_offset == m_startIndex-1;
- </summary>
- <returns>true if successful, false if there is no item left</returns>
- </member>
- <member name="P:System.Collections.Concurrent.Partitioner.StaticIndexRangePartition`1.Current">
- <summary>
- Current Property is different for IList and Array. Arrays calls 'ldelem' instructions for faster
- element retrieval.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.StaticIndexRangePartitionerForIList`1">
- <summary>
- Inherits from StaticIndexRangePartitioner
- Provides customized implementation of SourceCount and CreatePartition
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.StaticIndexRangePartitionForIList`1">
- <summary>
- Inherits from StaticIndexRangePartition
- Provides customized implementation of Current property
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.StaticIndexRangePartitionerForArray`1">
- <summary>
- Inherits from StaticIndexRangePartitioner
- Provides customized implementation of SourceCount and CreatePartition for Array
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.StaticIndexRangePartitionForArray`1">
- <summary>
- Inherits from StaticIndexRangePartitioner
- Provides customized implementation of SourceCount and CreatePartition
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.Partitioner.Shared`1">
- <summary>
- A very simple primitive that allows us to share a value across multiple threads.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.AggregateException">
- <summary>Represents one or more errors that occur during application execution.</summary>
- <remarks>
- <see cref="T:System.AggregateException"/> is used to consolidate multiple failures into a single, throwable
- exception object.
- </remarks>
- </member>
- <member name="M:System.AggregateException.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.AggregateException"/> class.
- </summary>
- </member>
- <member name="M:System.AggregateException.#ctor(System.String)">
- <summary>
- Initializes a new instance of the <see cref="T:System.AggregateException"/> class with
- a specified error message.
- </summary>
- <param name="message">The error message that explains the reason for the exception.</param>
- </member>
- <member name="M:System.AggregateException.#ctor(System.String,System.Exception)">
- <summary>
- Initializes a new instance of the <see cref="T:System.AggregateException"/> class with a specified error
- message and a reference to the inner exception that is the cause of this exception.
- </summary>
- <param name="message">The error message that explains the reason for the exception.</param>
- <param name="innerException">The exception that is the cause of the current exception.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="innerException"/> argument
- is null.</exception>
- </member>
- <member name="M:System.AggregateException.#ctor(System.Collections.Generic.IEnumerable{System.Exception})">
- <summary>
- Initializes a new instance of the <see cref="T:System.AggregateException"/> class with
- references to the inner exceptions that are the cause of this exception.
- </summary>
- <param name="innerExceptions">The exceptions that are the cause of the current exception.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="innerExceptions"/> argument
- is null.</exception>
- <exception cref="T:System.ArgumentException">An element of <paramref name="innerExceptions"/> is
- null.</exception>
- </member>
- <member name="M:System.AggregateException.#ctor(System.Exception[])">
- <summary>
- Initializes a new instance of the <see cref="T:System.AggregateException"/> class with
- references to the inner exceptions that are the cause of this exception.
- </summary>
- <param name="innerExceptions">The exceptions that are the cause of the current exception.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="innerExceptions"/> argument
- is null.</exception>
- <exception cref="T:System.ArgumentException">An element of <paramref name="innerExceptions"/> is
- null.</exception>
- </member>
- <member name="M:System.AggregateException.#ctor(System.String,System.Collections.Generic.IEnumerable{System.Exception})">
- <summary>
- Initializes a new instance of the <see cref="T:System.AggregateException"/> class with a specified error
- message and references to the inner exceptions that are the cause of this exception.
- </summary>
- <param name="message">The error message that explains the reason for the exception.</param>
- <param name="innerExceptions">The exceptions that are the cause of the current exception.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="innerExceptions"/> argument
- is null.</exception>
- <exception cref="T:System.ArgumentException">An element of <paramref name="innerExceptions"/> is
- null.</exception>
- </member>
- <member name="M:System.AggregateException.#ctor(System.String,System.Exception[])">
- <summary>
- Initializes a new instance of the <see cref="T:System.AggregateException"/> class with a specified error
- message and references to the inner exceptions that are the cause of this exception.
- </summary>
- <param name="message">The error message that explains the reason for the exception.</param>
- <param name="innerExceptions">The exceptions that are the cause of the current exception.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="innerExceptions"/> argument
- is null.</exception>
- <exception cref="T:System.ArgumentException">An element of <paramref name="innerExceptions"/> is
- null.</exception>
- </member>
- <member name="M:System.AggregateException.#ctor(System.String,System.Collections.Generic.IList{System.Exception})">
- <summary>
- Allocates a new aggregate exception with the specified message and list of inner exceptions.
- </summary>
- <param name="message">The error message that explains the reason for the exception.</param>
- <param name="innerExceptions">The exceptions that are the cause of the current exception.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="innerExceptions"/> argument
- is null.</exception>
- <exception cref="T:System.ArgumentException">An element of <paramref name="innerExceptions"/> is
- null.</exception>
- </member>
- <member name="M:System.AggregateException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
- <summary>
- Initializes a new instance of the <see cref="T:System.AggregateException"/> class with serialized data.
- </summary>
- <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds
- the serialized object data about the exception being thrown.</param>
- <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that
- contains contextual information about the source or destination. </param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> argument is null.</exception>
- <exception cref="T:System.Runtime.Serialization.SerializationException">The exception could not be deserialized correctly.</exception>
- </member>
- <member name="M:System.AggregateException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
- <summary>
- Sets the <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with information about
- the exception.
- </summary>
- <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds
- the serialized object data about the exception being thrown.</param>
- <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that
- contains contextual information about the source or destination. </param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="info"/> argument is null.</exception>
- </member>
- <member name="M:System.AggregateException.GetBaseException">
- <summary>
- Returns the <see cref="T:System.AggregateException"/> that is the root cause of this exception.
- </summary>
- </member>
- <member name="M:System.AggregateException.Handle(System.Func{System.Exception,System.Boolean})">
- <summary>
- Invokes a handler on each <see cref="T:System.Exception"/> contained by this <see cref="T:System.AggregateException"/>.
- </summary>
- <param name="predicate">The predicate to execute for each exception. The predicate accepts as an
- argument the <see cref="T:System.Exception"/> to be processed and returns a Boolean to indicate
- whether the exception was handled.</param>
- <remarks>
- Each invocation of the <paramref name="predicate"/> returns true or false to indicate whether the
- <see cref="T:System.Exception"/> was handled. After all invocations, if any exceptions went
- unhandled, all unhandled exceptions will be put into a new <see cref="T:System.AggregateException"/>
- which will be thrown. Otherwise, the <see cref="M:System.AggregateException.Handle(System.Func{System.Exception,System.Boolean})"/> method simply returns. If any
- invocations of the <paramref name="predicate"/> throws an exception, it will halt the processing
- of any more exceptions and immediately propagate the thrown exception as-is.
- </remarks>
- <exception cref="T:System.AggregateException">An exception contained by this <see cref="T:System.AggregateException"/> was not handled.</exception>
- <exception cref="T:System.ArgumentNullException">The <paramref name="predicate"/> argument is
- null.</exception>
- </member>
- <member name="M:System.AggregateException.Flatten">
- <summary>
- Flattens an <see cref="T:System.AggregateException"/> instances into a single, new instance.
- </summary>
- <returns>A new, flattened <see cref="T:System.AggregateException"/>.</returns>
- <remarks>
- If any inner exceptions are themselves instances of
- <see cref="T:System.AggregateException"/>, this method will recursively flatten all of them. The
- inner exceptions returned in the new <see cref="T:System.AggregateException"/>
- will be the union of all of the the inner exceptions from exception tree rooted at the provided
- <see cref="T:System.AggregateException"/> instance.
- </remarks>
- </member>
- <member name="M:System.AggregateException.ToString">
- <summary>
- Creates and returns a string representation of the current <see cref="T:System.AggregateException"/>.
- </summary>
- <returns>A string representation of the current exception.</returns>
- </member>
- <member name="P:System.AggregateException.InnerExceptions">
- <summary>
- Gets a read-only collection of the <see cref="T:System.Exception"/> instances that caused the
- current exception.
- </summary>
- </member>
- <member name="T:System.Func_`6">
- <summary>
- Encapsulates a method that has five parameters and returns a value of the type specified by the TResult parameter.
- </summary>
- </member>
- <member name="T:System.Threading.CancellationToken">
- <summary>
- Propogates notification that operations should be canceled.
- </summary>
- <remarks>
- <para>
- A <see cref="T:System.Threading.CancellationToken"/> may be created directly in an unchangeable canceled or non-canceled state
- using the CancellationToken's constructors. However, to have a CancellationToken that can change
- from a non-canceled to a canceled state,
- <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> must be used.
- CancellationTokenSource exposes the associated CancellationToken that may be canceled by the source through its
- <see cref="P:System.Threading.CancellationTokenSource.Token">Token</see> property.
- </para>
- <para>
- Once canceled, a token may not transition to a non-canceled state, and a token whose
- <see cref="P:System.Threading.CancellationToken.CanBeCanceled"/> is false will never change to one that can be canceled.
- </para>
- <para>
- All members of this struct are thread-safe and may be used concurrently from multiple threads.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.CancellationToken.#ctor(System.Threading.CancellationTokenSource)">
- <summary>
- Internal constructor only a CancellationTokenSource should create a CancellationToken
- </summary>
- </member>
- <member name="M:System.Threading.CancellationToken.#ctor(System.Boolean)">
- <summary>
- Initializes the <see cref="T:System.Threading.CancellationToken">CancellationToken</see>.
- </summary>
- <param name="canceled">
- The canceled state for the token.
- </param>
- <remarks>
- Tokens created with this constructor will remain in the canceled state specified
- by the <paramref name="canceled"/> parameter. If <paramref name="canceled"/> is false,
- both <see cref="P:System.Threading.CancellationToken.CanBeCanceled"/> and <see cref="P:System.Threading.CancellationToken.IsCancellationRequested"/> will be false.
- If <paramref name="canceled"/> is true,
- both <see cref="P:System.Threading.CancellationToken.CanBeCanceled"/> and <see cref="P:System.Threading.CancellationToken.IsCancellationRequested"/> will be true.
- </remarks>
- </member>
- <member name="M:System.Threading.CancellationToken.Register(System.Action)">
- <summary>
- Registers a delegate that will be called when this <see cref="T:System.Threading.CancellationToken">CancellationToken</see> is canceled.
- </summary>
- <remarks>
- <para>
- If this token is already in the canceled state, the
- delegate will be run immediately and synchronously. Any exception the delegate generates will be
- propogated out of this method call.
- </para>
- <para>
- The current <see cref="T:System.Threading.ExecutionContext">ExecutionContext</see>, if one exists, will be captured
- along with the delegate and will be used when executing it.
- </para>
- </remarks>
- <param name="callback">The delegate to be executed when the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> is canceled.</param>
- <returns>The <see cref="T:System.Threading.CancellationTokenRegistration"/> instance that can
- be used to deregister the callback.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="callback"/> is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The associated <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationToken.Register(System.Action,System.Boolean)">
- <summary>
- Registers a delegate that will be called when this
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> is canceled.
- </summary>
- <remarks>
- <para>
- If this token is already in the canceled state, the
- delegate will be run immediately and synchronously. Any exception the delegate generates will be
- propogated out of this method call.
- </para>
- <para>
- The current <see cref="T:System.Threading.ExecutionContext">ExecutionContext</see>, if one exists, will be captured
- along with the delegate and will be used when executing it.
- </para>
- </remarks>
- <param name="callback">The delegate to be executed when the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> is canceled.</param>
- <param name="useSynchronizationContext">A Boolean value that indicates whether to capture
- the current <see cref="T:System.Threading.SynchronizationContext">SynchronizationContext</see> and use it
- when invoking the <paramref name="callback"/>.</param>
- <returns>The <see cref="T:System.Threading.CancellationTokenRegistration"/> instance that can
- be used to deregister the callback.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="callback"/> is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The associated <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationToken.Register(System.Action{System.Object},System.Object)">
- <summary>
- Registers a delegate that will be called when this
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> is canceled.
- </summary>
- <remarks>
- <para>
- If this token is already in the canceled state, the
- delegate will be run immediately and synchronously. Any exception the delegate generates will be
- propogated out of this method call.
- </para>
- <para>
- The current <see cref="T:System.Threading.ExecutionContext">ExecutionContext</see>, if one exists, will be captured
- along with the delegate and will be used when executing it.
- </para>
- </remarks>
- <param name="callback">The delegate to be executed when the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> is canceled.</param>
- <param name="state">The state to pass to the <paramref name="callback"/> when the delegate is invoked. This may be null.</param>
- <returns>The <see cref="T:System.Threading.CancellationTokenRegistration"/> instance that can
- be used to deregister the callback.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="callback"/> is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The associated <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationToken.Register(System.Action{System.Object},System.Object,System.Boolean)">
- <summary>
- Registers a delegate that will be called when this
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> is canceled.
- </summary>
- <remarks>
- <para>
- If this token is already in the canceled state, the
- delegate will be run immediately and synchronously. Any exception the delegate generates will be
- propogated out of this method call.
- </para>
- <para>
- The current <see cref="T:System.Threading.ExecutionContext">ExecutionContext</see>, if one exists,
- will be captured along with the delegate and will be used when executing it.
- </para>
- </remarks>
- <param name="callback">The delegate to be executed when the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> is canceled.</param>
- <param name="state">The state to pass to the <paramref name="callback"/> when the delegate is invoked. This may be null.</param>
- <param name="useSynchronizationContext">A Boolean value that indicates whether to capture
- the current <see cref="T:System.Threading.SynchronizationContext">SynchronizationContext</see> and use it
- when invoking the <paramref name="callback"/>.</param>
- <returns>The <see cref="T:System.Threading.CancellationTokenRegistration"/> instance that can
- be used to deregister the callback.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="callback"/> is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The associated <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationToken.Equals(System.Threading.CancellationToken)">
- <summary>
- Determines whether the current <see cref="T:System.Threading.CancellationToken">CancellationToken</see> instance is equal to the
- specified token.
- </summary>
- <param name="other">The other <see cref="T:System.Threading.CancellationToken">CancellationToken</see> to which to compare this
- instance.</param>
- <returns>True if the instances are equal; otherwise, false. Two tokens are equal if they are associated
- with the same <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> or if they were both constructed
- from public CancellationToken constructors and their <see cref="P:System.Threading.CancellationToken.IsCancellationRequested"/> values are equal.</returns>
- </member>
- <member name="M:System.Threading.CancellationToken.Equals(System.Object)">
- <summary>
- Determines whether the current <see cref="T:System.Threading.CancellationToken">CancellationToken</see> instance is equal to the
- specified <see cref="T:System.Object"/>.
- </summary>
- <param name="other">The other object to which to compare this instance.</param>
- <returns>True if <paramref name="other"/> is a <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- and if the two instances are equal; otherwise, false. Two tokens are equal if they are associated
- with the same <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> or if they were both constructed
- from public CancellationToken constructors and their <see cref="P:System.Threading.CancellationToken.IsCancellationRequested"/> values are equal.</returns>
- <exception cref="T:System.ObjectDisposedException">An associated <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationToken.GetHashCode">
- <summary>
- Serves as a hash function for a <see cref="T:System.Threading.CancellationToken">CancellationToken</see>.
- </summary>
- <returns>A hash code for the current <see cref="T:System.Threading.CancellationToken">CancellationToken</see> instance.</returns>
- </member>
- <member name="M:System.Threading.CancellationToken.op_Equality(System.Threading.CancellationToken,System.Threading.CancellationToken)">
- <summary>
- Determines whether two <see cref="T:System.Threading.CancellationToken">CancellationToken</see> instances are equal.
- </summary>
- <param name="left">The first instance.</param>
- <param name="right">The second instance.</param>
- <returns>True if the instances are equal; otherwise, false.</returns>
- <exception cref="T:System.ObjectDisposedException">An associated <see
- cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationToken.op_Inequality(System.Threading.CancellationToken,System.Threading.CancellationToken)">
- <summary>
- Determines whether two <see cref="T:System.Threading.CancellationToken">CancellationToken</see> instances are not equal.
- </summary>
- <param name="left">The first instance.</param>
- <param name="right">The second instance.</param>
- <returns>True if the instances are not equal; otherwise, false.</returns>
- <exception cref="T:System.ObjectDisposedException">An associated <see
- cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationToken.ThrowIfCancellationRequested">
- <summary>
- Throws a <see cref="T:System.OperationCanceledException">OperationCanceledException</see> if
- this token has had cancellation requested.
- </summary>
- <remarks>
- This method provides functionality equivalent to:
- <code>
- if (token.IsCancellationRequested)
- throw new OperationCanceledException(token);
- </code>
- </remarks>
- <exception cref="T:System.OperationCanceledException">The token has had cancellation requested.</exception>
- <exception cref="T:System.ObjectDisposedException">The associated <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> has been disposed.</exception>
- </member>
- <member name="P:System.Threading.CancellationToken.None">
- <summary>
- Returns an empty CancellationToken value.
- </summary>
- <remarks>
- The <see cref="T:System.Threading.CancellationToken"/> value returned by this property will be non-cancelable by default.
- </remarks>
- </member>
- <member name="P:System.Threading.CancellationToken.IsCancellationRequested">
- <summary>
- Gets whether cancellation has been requested for this token.
- </summary>
- <value>Whether cancellation has been requested for this token.</value>
- <remarks>
- <para>
- This property indicates whether cancellation has been requested for this token,
- either through the token initially being construted in a canceled state, or through
- calling <see cref="M:System.Threading.CancellationTokenSource.Cancel">Cancel</see>
- on the token's associated <see cref="T:System.Threading.CancellationTokenSource"/>.
- </para>
- <para>
- If this property is true, it only guarantees that cancellation has been requested.
- It does not guarantee that every registered handler
- has finished executing, nor that cancellation requests have finished propagating
- to all registered handlers. Additional synchronization may be required,
- particularly in situations where related objects are being canceled concurrently.
- </para>
- </remarks>
- </member>
- <member name="P:System.Threading.CancellationToken.CanBeCanceled">
- <summary>
- Gets whether this token is capable of being in the canceled state.
- </summary>
- <remarks>
- If CanBeCanceled returns false, it is guaranteed that the token will never transition
- into a canceled state, meaning that <see cref="P:System.Threading.CancellationToken.IsCancellationRequested"/> will never
- return true.
- </remarks>
- </member>
- <member name="P:System.Threading.CancellationToken.WaitHandle">
- <summary>
- Gets a <see cref="T:System.Threading.WaitHandle"/> that is signaled when the token is canceled.</summary>
- <remarks>
- Accessing this property causes a <see cref="T:System.Threading.WaitHandle">WaitHandle</see>
- to be instantiated. It is preferable to only use this property when necessary, and to then
- dispose the associated <see cref="T:System.Threading.CancellationTokenSource"/> instance at the earliest opportunity (disposing
- the source will dispose of this allocated handle). The handle should not be closed or disposed directly.
- </remarks>
- <exception cref="T:System.ObjectDisposedException">The associated <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> has been disposed.</exception>
- </member>
- <member name="T:System.Threading.CancellationTokenRegistration">
- <summary>
- Represents a callback delegate that has been registered with a <see cref="T:System.Threading.CancellationToken">CancellationToken</see>.
- </summary>
- <remarks>
- To unregister a callback, dispose the corresponding Registration instance.
- </remarks>
- </member>
- <member name="M:System.Threading.CancellationTokenRegistration.TryDeregister">
- <summary>
- Attempts to deregister the item. If it's already being run, this may fail.
- Entails a full memory fence.
- </summary>
- <returns>True if the callback was found and deregistered, false otherwise.</returns>
- </member>
- <member name="M:System.Threading.CancellationTokenRegistration.Dispose">
- <summary>
- Disposes of the registration and unregisters the target callback from the associated
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see>.
- If the target callback is currently executing this method will wait until it completes, except
- in the degenerate cases where a callback method deregisters itself.
- </summary>
- </member>
- <member name="M:System.Threading.CancellationTokenRegistration.op_Equality(System.Threading.CancellationTokenRegistration,System.Threading.CancellationTokenRegistration)">
- <summary>
- Determines whether two <see
- cref="T:System.Threading.CancellationTokenRegistration">CancellationTokenRegistration</see>
- instances are equal.
- </summary>
- <param name="left">The first instance.</param>
- <param name="right">The second instance.</param>
- <returns>True if the instances are equal; otherwise, false.</returns>
- </member>
- <member name="M:System.Threading.CancellationTokenRegistration.op_Inequality(System.Threading.CancellationTokenRegistration,System.Threading.CancellationTokenRegistration)">
- <summary>
- Determines whether two <see cref="T:System.Threading.CancellationTokenRegistration">CancellationTokenRegistration</see> instances are not equal.
- </summary>
- <param name="left">The first instance.</param>
- <param name="right">The second instance.</param>
- <returns>True if the instances are not equal; otherwise, false.</returns>
- </member>
- <member name="M:System.Threading.CancellationTokenRegistration.Equals(System.Object)">
- <summary>
- Determines whether the current <see cref="T:System.Threading.CancellationTokenRegistration">CancellationTokenRegistration</see> instance is equal to the
- specified <see cref="T:System.Object"/>.
- </summary>
- <param name="obj">The other object to which to compare this instance.</param>
- <returns>True, if both this and <paramref name="obj"/> are equal. False, otherwise.
- Two <see cref="T:System.Threading.CancellationTokenRegistration">CancellationTokenRegistration</see> instances are equal if
- they both refer to the output of a single call to the same Register method of a
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see>.
- </returns>
- </member>
- <member name="M:System.Threading.CancellationTokenRegistration.Equals(System.Threading.CancellationTokenRegistration)">
- <summary>
- Determines whether the current <see cref="T:System.Threading.CancellationToken">CancellationToken</see> instance is equal to the
- specified <see cref="T:System.Object"/>.
- </summary>
- <param name="other">The other <see cref="T:System.Threading.CancellationTokenRegistration">CancellationTokenRegistration</see> to which to compare this instance.</param>
- <returns>True, if both this and <paramref name="other"/> are equal. False, otherwise.
- Two <see cref="T:System.Threading.CancellationTokenRegistration">CancellationTokenRegistration</see> instances are equal if
- they both refer to the output of a single call to the same Register method of a
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see>.
- </returns>
- </member>
- <member name="M:System.Threading.CancellationTokenRegistration.GetHashCode">
- <summary>
- Serves as a hash function for a <see cref="T:System.Threading.CancellationTokenRegistration">CancellationTokenRegistration.</see>.
- </summary>
- <returns>A hash code for the current <see cref="T:System.Threading.CancellationTokenRegistration">CancellationTokenRegistration</see> instance.</returns>
- </member>
- <member name="T:System.Threading.CancellationTokenSource">
- <summary>
- Signals to a <see cref="T:System.Threading.CancellationToken"/> that it should be canceled.
- </summary>
- <remarks>
- <para>
- <see cref="T:System.Threading.CancellationTokenSource"/> is used to instantiate a <see cref="T:System.Threading.CancellationToken"/>
- (via the source's <see cref="P:System.Threading.CancellationTokenSource.Token">Token</see> property)
- that can be handed to operations that wish to be notified of cancellation or that can be used to
- register asynchronous operations for cancellation. That token may have cancellation requested by
- calling to the source's <see cref="M:System.Threading.CancellationTokenSource.Cancel">Cancel</see>
- method.
- </para>
- <para>
- All members of this class, except <see cref="M:System.Threading.CancellationTokenSource.Dispose">Dispose</see>, are thread-safe and may be used
- concurrently from multiple threads.
- </para>
- </remarks>
- </member>
- <member name="F:System.Threading.CancellationTokenSource.m_threadIDExecutingCallbacks">
- The ID of the thread currently executing the main body of CTS.Cancel()
- this helps us to know if a call to ctr.Dispose() is running 'within' a cancellation callback.
- This is updated as we move between the main thread calling cts.Cancel() and any syncContexts that are used to
- actually run the callbacks.
- </member>
- <member name="M:System.Threading.CancellationTokenSource.#ctor">
- <summary>
- Initializes the <see cref="T:System.Threading.CancellationTokenSource"/>.
- </summary>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.Cancel">
- <summary>
- Communicates a request for cancellation.
- </summary>
- <remarks>
- <para>
- The associated <see cref="T:System.Threading.CancellationToken"/> will be
- notified of the cancellation and will transition to a state where
- <see cref="P:System.Threading.CancellationToken.IsCancellationRequested">IsCancellationRequested</see> returns true.
- Any callbacks or cancelable operations
- registered with the <see cref="T:System.Threading.CancellationToken"/> will be executed.
- </para>
- <para>
- Cancelable operations and callbacks registered with the token should not throw exceptions.
- However, this overload of Cancel will aggregate any exceptions thrown into a <see cref="T:System.AggregateException"/>,
- such that one callback throwing an exception will not prevent other registered callbacks from being executed.
- </para>
- <para>
- The <see cref="T:System.Threading.ExecutionContext"/> that was captured when each callback was registered
- will be reestablished when the callback is invoked.
- </para>
- </remarks>
- <exception cref="T:System.AggregateException">An aggregate exception containing all the exceptions thrown
- by the registered callbacks on the associated <see cref="T:System.Threading.CancellationToken"/>.</exception>
- <exception cref="T:System.ObjectDisposedException">This <see cref="T:System.Threading.CancellationTokenSource"/> has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.Cancel(System.Boolean)">
- <summary>
- Communicates a request for cancellation.
- </summary>
- <remarks>
- <para>
- The associated <see cref="T:System.Threading.CancellationToken"/> will be
- notified of the cancellation and will transition to a state where
- <see cref="P:System.Threading.CancellationToken.IsCancellationRequested">IsCancellationRequested</see> returns true.
- Any callbacks or cancelable operations
- registered with the <see cref="T:System.Threading.CancellationToken"/> will be executed.
- </para>
- <para>
- Cancelable operations and callbacks registered with the token should not throw exceptions.
- If <paramref name="throwOnFirstException"/> is true, an exception will immediately propagate out of the
- call to Cancel, preventing the remaining callbacks and cancelable operations from being processed.
- If <paramref name="throwOnFirstException"/> is false, this overload will aggregate any
- exceptions thrown into a <see cref="T:System.AggregateException"/>,
- such that one callback throwing an exception will not prevent other registered callbacks from being executed.
- </para>
- <para>
- The <see cref="T:System.Threading.ExecutionContext"/> that was captured when each callback was registered
- will be reestablished when the callback is invoked.
- </para>
- </remarks>
- <param name="throwOnFirstException">Specifies whether exceptions should immediately propagate.</param>
- <exception cref="T:System.AggregateException">An aggregate exception containing all the exceptions thrown
- by the registered callbacks on the associated <see cref="T:System.Threading.CancellationToken"/>.</exception>
- <exception cref="T:System.ObjectDisposedException">This <see cref="T:System.Threading.CancellationTokenSource"/> has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.Dispose">
- <summary>
- Releases the resources used by this <see cref="T:System.Threading.CancellationTokenSource" />.
- </summary>
- <remarks>
- This method is not thread-safe for any other concurrent calls.
- </remarks>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.ThrowIfDisposed">
- <summary>
- Throws an exception if the source has been disposed.
- </summary>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.InternalGetStaticSource(System.Boolean)">
- <summary>
- InternalGetStaticSource()
- </summary>
- <param name="set">Whether the source should be set.</param>
- <returns>A static source to be shared among multiple tokens.</returns>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.InternalRegister(System.Action{System.Object},System.Object,System.Threading.SynchronizationContext,System.Threading.ExecutionContext)">
- <summary>
- Registers a callback object. If cancellation has already occurred, the
- callback will have been run by the time this method returns.
- </summary>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.NotifyCancellation(System.Boolean)">
- <summary>
-
- </summary>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.ExecuteCallbackHandlers(System.Boolean)">
- <summary>
- Invoke the Canceled event.
- </summary>
- <remarks>
- The handlers are invoked synchronously in LIFO order.
- </remarks>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.CreateLinkedTokenSource(System.Threading.CancellationToken,System.Threading.CancellationToken)">
- <summary>
- Creates a <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> that will be in the canceled state
- when any of the source tokens are in the canceled state.
- </summary>
- <param name="token1">The first <see cref="T:System.Threading.CancellationToken">CancellationToken</see> to observe.</param>
- <param name="token2">The second <see cref="T:System.Threading.CancellationToken">CancellationToken</see> to observe.</param>
- <returns>A <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> that is linked
- to the source tokens.</returns>
- <exception cref="T:System.ObjectDisposedException">A <see
- cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with
- one of the source tokens has been disposed.</exception>
- </member>
- <member name="M:System.Threading.CancellationTokenSource.CreateLinkedTokenSource(System.Threading.CancellationToken[])">
- <summary>
- Creates a <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> that will be in the canceled state
- when any of the source tokens are in the canceled state.
- </summary>
- <param name="tokens">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see> instances to observe.</param>
- <returns>A <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> that is linked
- to the source tokens.</returns>
- <exception cref="T:System.ArgumentNullException"><paramref name="tokens"/> is null.</exception>
- <exception cref="T:System.ObjectDisposedException">A <see
- cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with
- one of the source tokens has been disposed.</exception>
- </member>
- <member name="P:System.Threading.CancellationTokenSource.IsCancellationRequested">
- <summary>
- Gets whether cancellation has been requested for this <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see>.
- </summary>
- <value>Whether cancellation has been requested for this <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see>.</value>
- <remarks>
- <para>
- This property indicates whether cancellation has been requested for this token source, such as
- due to a call to its
- <see cref="M:System.Threading.CancellationTokenSource.Cancel">Cancel</see> method.
- </para>
- <para>
- If this property returns true, it only guarantees that cancellation has been requested. It does not
- guarantee that every handler registered with the corresponding token has finished executing, nor
- that cancellation requests have finished propagating to all registered handlers. Additional
- synchronization may be required, particularly in situations where related objects are being
- canceled concurrently.
- </para>
- </remarks>
- </member>
- <member name="P:System.Threading.CancellationTokenSource.IsCancellationCompleted">
- <summary>
- A simple helper to determine whether cancellation has finished.
- </summary>
- </member>
- <member name="P:System.Threading.CancellationTokenSource.IsDisposed">
- <summary>
- A simple helper to determine whether disposal has occured.
- </summary>
- </member>
- <member name="P:System.Threading.CancellationTokenSource.ThreadIDExecutingCallbacks">
- <summary>
- The ID of the thread that is running callbacks.
- </summary>
- </member>
- <member name="P:System.Threading.CancellationTokenSource.Token">
- <summary>
- Gets the <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- associated with this <see cref="T:System.Threading.CancellationTokenSource"/>.
- </summary>
- <value>The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- associated with this <see cref="T:System.Threading.CancellationTokenSource"/>.</value>
- <exception cref="T:System.ObjectDisposedException">The token source has been
- disposed.</exception>
- </member>
- <member name="P:System.Threading.CancellationTokenSource.CanBeCanceled">
- <summary>
-
- </summary>
- </member>
- <member name="P:System.Threading.CancellationTokenSource.WaitHandle">
- <summary>
-
- </summary>
- </member>
- <member name="P:System.Threading.CancellationTokenSource.ExecutingCallback">
- <summary>
- The currently executing callback
- </summary>
- </member>
- <member name="T:System.Threading.CancellationCallbackInfo">
- <summary>
- A helper class for collating the various bits of information required to execute
- cancellation callbacks.
- </summary>
- </member>
- <member name="M:System.Threading.CancellationCallbackInfo.ExecuteCallback">
- <summary>
- InternalExecuteCallbackSynchronously_GeneralPath
- This will be called on the target synchronization context, however, we still need to restore the required execution context
- </summary>
- </member>
- <member name="T:System.Threading.SparselyPopulatedArray`1">
- <summary>
- A sparsely populated array. Elements can be sparse and some null, but this allows for
- lock-free additions and growth, and also for constant time removal (by nulling out).
- </summary>
- <typeparam name="T">The kind of elements contained within.</typeparam>
- </member>
- <member name="M:System.Threading.SparselyPopulatedArray`1.#ctor(System.Int32)">
- <summary>
- Allocates a new array with the given initial size.
- </summary>
- <param name="initialSize">How many array slots to pre-allocate.</param>
- </member>
- <member name="M:System.Threading.SparselyPopulatedArray`1.Add(`0)">
- <summary>
- Adds an element in the first available slot, beginning the search from the tail-to-head.
- If no slots are available, the array is grown. The method doesn't return until successful.
- </summary>
- <param name="element">The element to add.</param>
- <returns>Information about where the add happened, to enable O(1) deregistration.</returns>
- </member>
- <member name="P:System.Threading.SparselyPopulatedArray`1.Head">
- <summary>
- The head of the doubly linked list.
- </summary>
- </member>
- <member name="P:System.Threading.SparselyPopulatedArray`1.Tail">
- <summary>
- The tail of the doubly linked list.
- </summary>
- </member>
- <member name="T:System.Threading.SparselyPopulatedArrayAddInfo`1">
- <summary>
- A struct to hold a link to the exact spot in an array an element was inserted, enabling
- constant time removal later on.
- </summary>
- </member>
- <member name="T:System.Threading.SparselyPopulatedArrayFragment`1">
- <summary>
- A fragment of a sparsely populated array, doubly linked.
- </summary>
- <typeparam name="T">The kind of elements contained within.</typeparam>
- </member>
- <member name="T:System.Threading.CountdownEvent">
- <summary>
- Represents a synchronization primitive that is signaled when its count reaches zero.
- </summary>
- <remarks>
- All public and protected members of <see cref="T:System.Threading.CountdownEvent"/> are thread-safe and may be used
- concurrently from multiple threads, with the exception of Dispose, which
- must only be used when all other operations on the <see cref="T:System.Threading.CountdownEvent"/> have
- completed, and Reset, which should only be used when no other threads are
- accessing the event.
- </remarks>
- </member>
- <member name="M:System.Threading.CountdownEvent.#ctor(System.Int32)">
- <summary>
- Initializes a new instance of <see cref="T:System.Threading.CountdownEvent"/> class with the
- specified count.
- </summary>
- <param name="initialCount">The number of signals required to set the <see
- cref="T:System.Threading.CountdownEvent"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="initialCount"/> is less
- than 0.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Dispose">
- <summary>
- Releases all resources used by the current instance of <see cref="T:System.Threading.CountdownEvent"/>.
- </summary>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.CountdownEvent"/>, <see cref="M:System.Threading.CountdownEvent.Dispose"/> is not
- thread-safe and may not be used concurrently with other members of this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.CountdownEvent.Dispose(System.Boolean)">
- <summary>
- When overridden in a derived class, releases the unmanaged resources used by the
- <see cref="T:System.Threading.CountdownEvent"/>, and optionally releases the managed resources.
- </summary>
- <param name="disposing">true to release both managed and unmanaged resources; false to release
- only unmanaged resources.</param>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.CountdownEvent"/>, <see cref="M:System.Threading.CountdownEvent.Dispose"/> is not
- thread-safe and may not be used concurrently with other members of this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.CountdownEvent.Signal">
- <summary>
- Registers a signal with the <see cref="T:System.Threading.CountdownEvent"/>, decrementing its
- count.
- </summary>
- <returns>true if the signal caused the count to reach zero and the event was set; otherwise,
- false.</returns>
- <exception cref="T:System.InvalidOperationException">The current instance is already set.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Signal(System.Int32)">
- <summary>
- Registers multiple signals with the <see cref="T:System.Threading.CountdownEvent"/>,
- decrementing its count by the specified amount.
- </summary>
- <param name="signalCount">The number of signals to register.</param>
- <returns>true if the signals caused the count to reach zero and the event was set; otherwise,
- false.</returns>
- <exception cref="T:System.InvalidOperationException">
- The current instance is already set. -or- Or <paramref name="signalCount"/> is greater than <see cref="P:System.Threading.CountdownEvent.CurrentCount"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="signalCount"/> is less
- than 1.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.AddCount">
- <summary>
- Increments the <see cref="T:System.Threading.CountdownEvent"/>'s current count by one.
- </summary>
- <exception cref="T:System.InvalidOperationException">The current instance is already
- set.</exception>
- <exception cref="T:System.InvalidOperationException"><see cref="P:System.Threading.CountdownEvent.CurrentCount"/> is equal to <see cref="T:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.ObjectDisposedException">
- The current instance has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.TryAddCount">
- <summary>
- Attempts to increment the <see cref="T:System.Threading.CountdownEvent"/>'s current count by one.
- </summary>
- <returns>true if the increment succeeded; otherwise, false. If <see cref="P:System.Threading.CountdownEvent.CurrentCount"/> is
- already at zero. this will return false.</returns>
- <exception cref="T:System.InvalidOperationException"><see cref="P:System.Threading.CountdownEvent.CurrentCount"/> is equal to <see cref="T:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.AddCount(System.Int32)">
- <summary>
- Increments the <see cref="T:System.Threading.CountdownEvent"/>'s current count by a specified
- value.
- </summary>
- <param name="signalCount">The value by which to increase <see cref="P:System.Threading.CountdownEvent.CurrentCount"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="signalCount"/> is less than
- 0.</exception>
- <exception cref="T:System.InvalidOperationException">The current instance is already
- set.</exception>
- <exception cref="T:System.InvalidOperationException"><see cref="P:System.Threading.CountdownEvent.CurrentCount"/> is equal to <see cref="T:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.TryAddCount(System.Int32)">
- <summary>
- Attempts to increment the <see cref="T:System.Threading.CountdownEvent"/>'s current count by a
- specified value.
- </summary>
- <param name="signalCount">The value by which to increase <see cref="P:System.Threading.CountdownEvent.CurrentCount"/>.</param>
- <returns>true if the increment succeeded; otherwise, false. If <see cref="P:System.Threading.CountdownEvent.CurrentCount"/> is
- already at zero this will return false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="signalCount"/> is less
- than 0.</exception>
- <exception cref="T:System.InvalidOperationException">The current instance is already
- set.</exception>
- <exception cref="T:System.InvalidOperationException"><see cref="P:System.Threading.CountdownEvent.CurrentCount"/> is equal to <see cref="T:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Reset">
- <summary>
- Resets the <see cref="P:System.Threading.CountdownEvent.CurrentCount"/> to the value of <see cref="P:System.Threading.CountdownEvent.InitialCount"/>.
- </summary>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.CountdownEvent"/>, Reset is not
- thread-safe and may not be used concurrently with other members of this instance.
- </remarks>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed..</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Reset(System.Int32)">
- <summary>
- Resets the <see cref="P:System.Threading.CountdownEvent.CurrentCount"/> to a specified value.
- </summary>
- <param name="count">The number of signals required to set the <see cref="T:System.Threading.CountdownEvent"/>.</param>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.CountdownEvent"/>, Reset is not
- thread-safe and may not be used concurrently with other members of this instance.
- </remarks>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count"/> is
- less than 0.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has alread been disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Wait">
- <summary>
- Blocks the current thread until the <see cref="T:System.Threading.CountdownEvent"/> is set.
- </summary>
- <remarks>
- The caller of this method blocks indefinitely until the current instance is set. The caller will
- return immediately if the event is currently in a set state.
- </remarks>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Wait(System.Threading.CancellationToken)">
- <summary>
- Blocks the current thread until the <see cref="T:System.Threading.CountdownEvent"/> is set, while
- observing a <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <remarks>
- The caller of this method blocks indefinitely until the current instance is set. The caller will
- return immediately if the event is currently in a set state. If the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> being observed
- is canceled during the wait operation, an <see cref="T:System.OperationCanceledException"/>
- will be thrown.
- </remarks>
- <exception cref="T:System.OperationCanceledException"><paramref name="cancellationToken"/> has been
- canceled.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Wait(System.TimeSpan)">
- <summary>
- Blocks the current thread until the <see cref="T:System.Threading.CountdownEvent"/> is set, using a
- <see cref="T:System.TimeSpan"/> to measure the time interval.
- </summary>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of
- milliseconds to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to
- wait indefinitely.</param>
- <returns>true if the <see cref="T:System.Threading.CountdownEvent"/> was set; otherwise,
- false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative
- number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater
- than <see cref="F:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Wait(System.TimeSpan,System.Threading.CancellationToken)">
- <summary>
- Blocks the current thread until the <see cref="T:System.Threading.CountdownEvent"/> is set, using
- a <see cref="T:System.TimeSpan"/> to measure the time interval, while observing a
- <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of
- milliseconds to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to
- wait indefinitely.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <returns>true if the <see cref="T:System.Threading.CountdownEvent"/> was set; otherwise,
- false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative
- number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater
- than <see cref="F:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- <exception cref="T:System.OperationCanceledException"><paramref name="cancellationToken"/> has
- been canceled.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Wait(System.Int32)">
- <summary>
- Blocks the current thread until the <see cref="T:System.Threading.CountdownEvent"/> is set, using a
- 32-bit signed integer to measure the time interval.
- </summary>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/>(-1) to wait indefinitely.</param>
- <returns>true if the <see cref="T:System.Threading.CountdownEvent"/> was set; otherwise,
- false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.Wait(System.Int32,System.Threading.CancellationToken)">
- <summary>
- Blocks the current thread until the <see cref="T:System.Threading.CountdownEvent"/> is set, using a
- 32-bit signed integer to measure the time interval, while observing a
- <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/>(-1) to wait indefinitely.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <returns>true if the <see cref="T:System.Threading.CountdownEvent"/> was set; otherwise,
- false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- <exception cref="T:System.OperationCanceledException"><paramref name="cancellationToken"/> has
- been canceled.</exception>
- </member>
- <member name="M:System.Threading.CountdownEvent.ThrowIfDisposed">
- <summary>
- Throws an exception if the latch has been disposed.
- </summary>
- </member>
- <member name="P:System.Threading.CountdownEvent.CurrentCount">
- <summary>
- Gets the number of remaining signals required to set the event.
- </summary>
- <value>
- The number of remaining signals required to set the event.
- </value>
- </member>
- <member name="P:System.Threading.CountdownEvent.InitialCount">
- <summary>
- Gets the numbers of signals initially required to set the event.
- </summary>
- <value>
- The number of signals initially required to set the event.
- </value>
- </member>
- <member name="P:System.Threading.CountdownEvent.IsSet">
- <summary>
- Determines whether the event is set.
- </summary>
- <value>true if the event is set; otherwise, false.</value>
- </member>
- <member name="P:System.Threading.CountdownEvent.WaitHandle">
- <summary>
- Gets a <see cref="T:System.Threading.WaitHandle"/> that is used to wait for the event to be set.
- </summary>
- <value>A <see cref="T:System.Threading.WaitHandle"/> that is used to wait for the event to be set.</value>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been disposed.</exception>
- <remarks>
- <see cref="P:System.Threading.CountdownEvent.WaitHandle"/> should only be used if it's needed for integration with code bases
- that rely on having a WaitHandle. If all that's needed is to wait for the <see cref="T:System.Threading.CountdownEvent"/>
- to be set, the <see cref="M:System.Threading.CountdownEvent.Wait"/> method should be preferred.
- </remarks>
- </member>
- <member name="T:System.Threading.ManualResetEventSlim">
- <summary>
- Provides a slimmed down version of <see cref="T:System.Threading.ManualResetEvent"/>.
- </summary>
- <remarks>
- All public and protected members of <see cref="T:System.Threading.ManualResetEventSlim"/> are thread-safe and may be used
- concurrently from multiple threads, with the exception of Dispose, which
- must only be used when all other operations on the <see cref="T:System.Threading.ManualResetEventSlim"/> have
- completed, and Reset, which should only be used when no other threads are
- accessing the event.
- </remarks>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.ManualResetEventSlim"/>
- class with an initial state of nonsignaled.
- </summary>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.#ctor(System.Boolean)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.ManualResetEventSlim"/>
- class with a Boolen value indicating whether to set the intial state to signaled.
- </summary>
- <param name="initialState">true to set the initial state signaled; false to set the initial state
- to nonsignaled.</param>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.#ctor(System.Boolean,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.ManualResetEventSlim"/>
- class with a Boolen value indicating whether to set the intial state to signaled and a specified
- spin count.
- </summary>
- <param name="initialState">true to set the initial state to signaled; false to set the initial state
- to nonsignaled.</param>
- <param name="spinCount">The number of spin waits that will occur before falling back to a true
- wait.</param>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="spinCount"/> is less than
- 0 or greater than the maximum allowed value.</exception>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Initialize(System.Boolean,System.Int32)">
- <summary>
- Initializes the internal state of the event.
- </summary>
- <param name="initialState">Whether the event is set initially or not.</param>
- <param name="spinCount">The spin count that decides when the event will block.</param>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.EnsureLockObjectCreated">
- <summary>
- Helper to ensure the lock object is created before first use.
- </summary>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.LazyInitializeEvent">
- <summary>
- This method lazily initializes the event object. It uses CAS to guarantee that
- many threads racing to call this at once don't result in more than one event
- being stored and used. The event will be signaled or unsignaled depending on
- the state of the thin-event itself, with synchronization taken into account.
- </summary>
- <returns>True if a new event was created and stored, false otherwise.</returns>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Set">
- <summary>
- Sets the state of the event to signaled, which allows one or more threads waiting on the event to
- proceed.
- </summary>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Set(System.Boolean)">
- <summary>
- Private helper to actually perform the Set.
- </summary>
- <param name="duringCancellation">Indicates whether we are calling Set() during cancellation.</param>
- <exception cref="T:System.OperationCanceledException">The object has been canceled.</exception>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Reset">
- <summary>
- Sets the state of the event to nonsignaled, which causes threads to block.
- </summary>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.ManualResetEventSlim"/>, <see cref="M:System.Threading.ManualResetEventSlim.Reset"/> is not
- thread-safe and may not be used concurrently with other members of this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Wait">
- <summary>
- Blocks the current thread until the current <see cref="T:System.Threading.ManualResetEventSlim"/> is set.
- </summary>
- <exception cref="T:System.InvalidOperationException">
- The maximum number of waiters has been exceeded.
- </exception>
- <remarks>
- The caller of this method blocks indefinitely until the current instance is set. The caller will
- return immediately if the event is currently in a set state.
- </remarks>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Wait(System.Threading.CancellationToken)">
- <summary>
- Blocks the current thread until the current <see cref="T:System.Threading.ManualResetEventSlim"/> receives a signal,
- while observing a <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <exception cref="T:System.InvalidOperationException">
- The maximum number of waiters has been exceeded.
- </exception>
- <exception cref="T:System.OperationCanceledExcepton"><paramref name="cancellationToken"/> was
- canceled.</exception>
- <remarks>
- The caller of this method blocks indefinitely until the current instance is set. The caller will
- return immediately if the event is currently in a set state.
- </remarks>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Wait(System.TimeSpan)">
- <summary>
- Blocks the current thread until the current <see cref="T:System.Threading.ManualResetEventSlim"/> is set, using a
- <see cref="T:System.TimeSpan"/> to measure the time interval.
- </summary>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds
- to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <returns>true if the <see cref="T:System.Threading.ManualResetEventSlim"/> was set; otherwise,
- false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative
- number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater
- than <see cref="F:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.InvalidOperationException">
- The maximum number of waiters has been exceeded.
- </exception>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Wait(System.TimeSpan,System.Threading.CancellationToken)">
- <summary>
- Blocks the current thread until the current <see cref="T:System.Threading.ManualResetEventSlim"/> is set, using a
- <see cref="T:System.TimeSpan"/> to measure the time interval, while observing a <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds
- to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <returns>true if the <see cref="T:System.Threading.ManualResetEventSlim"/> was set; otherwise,
- false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative
- number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater
- than <see cref="F:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.Threading.OperationCanceledException"><paramref name="cancellationToken"/> was canceled.</exception>
- <exception cref="T:System.InvalidOperationException">
- The maximum number of waiters has been exceeded.
- </exception>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Wait(System.Int32)">
- <summary>
- Blocks the current thread until the current <see cref="T:System.Threading.ManualResetEventSlim"/> is set, using a
- 32-bit signed integer to measure the time interval.
- </summary>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/>(-1) to wait indefinitely.</param>
- <returns>true if the <see cref="T:System.Threading.ManualResetEventSlim"/> was set; otherwise,
- false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">
- The maximum number of waiters has been exceeded.
- </exception>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Wait(System.Int32,System.Threading.CancellationToken)">
- <summary>
- Blocks the current thread until the current <see cref="T:System.Threading.ManualResetEventSlim"/> is set, using a
- 32-bit signed integer to measure the time interval, while observing a <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/>(-1) to wait indefinitely.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <returns>true if the <see cref="T:System.Threading.ManualResetEventSlim"/> was set; otherwise,
- false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">
- The maximum number of waiters has been exceeded.
- </exception>
- <exception cref="T:System.Threading.OperationCanceledException"><paramref name="cancellationToken"/> was canceled.</exception>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Dispose">
- <summary>
- Releases all resources used by the current instance of <see cref="T:System.Threading.ManualResetEventSlim"/>.
- </summary>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.ManualResetEventSlim"/>, <see cref="M:System.Threading.ManualResetEventSlim.Dispose"/> is not
- thread-safe and may not be used concurrently with other members of this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.Dispose(System.Boolean)">
- <summary>
- When overridden in a derived class, releases the unmanaged resources used by the
- <see cref="T:System.Threading.ManualResetEventSlim"/>, and optionally releases the managed resources.
- </summary>
- <param name="disposing">true to release both managed and unmanaged resources;
- false to release only unmanaged resources.</param>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.ManualResetEventSlim"/>, <see cref="M:System.Threading.ManualResetEventSlim.Dispose(System.Boolean)"/> is not
- thread-safe and may not be used concurrently with other members of this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.ThrowIfDisposed">
- <summary>
- Throw ObjectDisposedException if the MRES is disposed
- </summary>
- </member>
- <member name="F:System.Threading.ManualResetEventSlim.s_cancellationTokenCallback">
- <summary>
- Private helper method to wake up waiters when a cancellationToken gets canceled.
- </summary>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.UpdateStateAtomically(System.Int32,System.Int32)">
- <summary>
- Private helper method for updating parts of a bit-string state value.
- Mainly called from the IsSet and Waiters properties setters
- </summary>
- <remarks>
- Note: the parameter types must be int as CompareExchange cannot take a Uint
- </remarks>
- <param name="newBits">The new value</param>
- <param name="updateBitsMask">The mask used to set the bits</param>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.ExtractStatePortionAndShiftRight(System.Int32,System.Int32,System.Int32)">
- <summary>
- Private helper method - performs Mask and shift, particular helpful to extract a field from a packed word.
- eg ExtractStatePortionAndShiftRight(0x12345678, 0xFF000000, 24) => 0x12, ie extracting the top 8-bits as a simple integer
-
- ?? is there a common place to put this rather than being private to MRES?
- </summary>
- <param name="state"></param>
- <param name="mask"></param>
- <param name="rightBitShiftCount"></param>
- <returns></returns>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.ExtractStatePortion(System.Int32,System.Int32)">
- <summary>
- Performs a Mask operation, but does not perform the shift.
- This is acceptable for boolean values for which the shift is unnecessary
- eg (val & Mask) != 0 is an appropriate way to extract a boolean rather than using
- ((val & Mask) >> shiftAmount) == 1
-
- ?? is there a common place to put this rather than being private to MRES?
- </summary>
- <param name="state"></param>
- <param name="mask"></param>
- </member>
- <member name="M:System.Threading.ManualResetEventSlim.UpdateTimeOut(System.Int64,System.Int32)">
- <summary>
- Helper function to measure and update the wait time
- </summary>
- <param name="startTimeTicks"> The first time (in Ticks) observed when the wait started.</param>
- <param name="originalWaitMillisecondsTimeout">The orginal wait timeoutout in milliseconds.</param>
- <returns>The new wait time in milliseconds, -1 if the time expired, -2 if overflow in counters
- has occurred.</returns>
- </member>
- <member name="P:System.Threading.ManualResetEventSlim.WaitHandle">
- <summary>
- Gets the underlying <see cref="T:System.Threading.WaitHandle"/> object for this <see cref="T:System.Threading.ManualResetEventSlim"/>.
- </summary>
- <value>The underlying <see cref="T:System.Threading.WaitHandle"/> event object fore this <see cref="T:System.Threading.ManualResetEventSlim"/>.</value>
- <remarks>
- Accessing this property forces initialization of an underlying event object if one hasn't
- already been created. To simply wait on this <see cref="T:System.Threading.ManualResetEventSlim"/>,
- the public Wait methods should be preferred.
- </remarks>
- </member>
- <member name="P:System.Threading.ManualResetEventSlim.IsSet">
- <summary>
- Gets whether the event is set.
- </summary>
- <value>true if the event has is set; otherwise, false.</value>
- </member>
- <member name="P:System.Threading.ManualResetEventSlim.SpinCount">
- <summary>
- Gets the number of spin waits that will be occur before falling back to a true wait.
- </summary>
- </member>
- <member name="P:System.Threading.ManualResetEventSlim.Waiters">
- <summary>
- How many threads are waiting.
- </summary>
- </member>
- <member name="T:System.Lazy`1">
- <summary>
- Provides support for lazy initialization.
- </summary>
- <typeparam name="T">Specifies the type of element being laziliy initialized.</typeparam>
- <remarks>
- <para>
- By default, all public and protected members of <see cref="T:System.Lazy`1"/> are thread-safe and may be used
- concurrently from multiple threads. These thread-safety guarantees may be removed optionally and per instance
- using parameters to the type's constructors.
- </para>
- </remarks>
- </member>
- <member name="M:System.Lazy`1.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Lazy{T}"/> class that
- uses <typeparamref name="T"/>'s default constructor for lazy initialization.
- </summary>
- <remarks>
- An instance created with this constructor may be used concurrently from multiple threads.
- </remarks>
- </member>
- <member name="M:System.Lazy`1.#ctor(System.Func{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Lazy{T}"/> class that uses a
- specified initialization function.
- </summary>
- <param name="valueFactory">
- The <see cref="T:System.Func{T}"/> invoked to produce the lazily-initialized value when it is
- needed.
- </param>
- <exception cref="T:System.ArgumentNullException"><paramref name="valueFactory"/> is a null
- reference (Nothing in Visual Basic).</exception>
- <remarks>
- An instance created with this constructor may be used concurrently from multiple threads.
- </remarks>
- </member>
- <member name="M:System.Lazy`1.#ctor(System.Boolean)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Lazy{T}"/>
- class that uses <typeparamref name="T"/>'s default constructor and a specified thread-safety mode.
- </summary>
- <param name="isThreadSafe">true if this instance should be usable by multiple threads concurrently; false if the instance will only be used by one thread at a time.
- </param>
- </member>
- <member name="M:System.Lazy`1.#ctor(System.Threading.LazyThreadSafetyMode)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Lazy{T}"/>
- class that uses <typeparamref name="T"/>'s default constructor and a specified thread-safety mode.
- </summary>
- <param name="mode">The lazy thread-safety mode mode</param>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="mode"/> mode contains an invalid valuee</exception>
- </member>
- <member name="M:System.Lazy`1.#ctor(System.Func{`0},System.Boolean)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Lazy{T}"/> class
- that uses a specified initialization function and a specified thread-safety mode.
- </summary>
- <param name="valueFactory">
- The <see cref="T:System.Func{T}"/> invoked to produce the lazily-initialized value when it is needed.
- </param>
- <param name="isThreadSafe">true if this instance should be usable by multiple threads concurrently; false if the instance will only be used by one thread at a time.
- </param>
- <exception cref="T:System.ArgumentNullException"><paramref name="valueFactory"/> is
- a null reference (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Lazy`1.#ctor(System.Func{`0},System.Threading.LazyThreadSafetyMode)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Lazy{T}"/> class
- that uses a specified initialization function and a specified thread-safety mode.
- </summary>
- <param name="valueFactory">
- The <see cref="T:System.Func{T}"/> invoked to produce the lazily-initialized value when it is needed.
- </param>
- <param name="mode">The lazy thread-safety mode.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="valueFactory"/> is
- a null reference (Nothing in Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="mode"/> mode contains an invalid value.</exception>
- </member>
- <member name="M:System.Lazy`1.GetObjectFromMode(System.Threading.LazyThreadSafetyMode)">
- <summary>
- Static helper function that returns an object based on the given mode. it also throws an exception if the mode is invalid
- </summary>
- </member>
- <member name="M:System.Lazy`1.OnSerializing(System.Runtime.Serialization.StreamingContext)">
- <summary>Forces initialization during serialization.</summary>
- <param name="context">The StreamingContext for the serialization operation.</param>
- </member>
- <member name="M:System.Lazy`1.ToString">
- <summary>Creates and returns a string representation of this instance.</summary>
- <returns>The result of calling <see cref="M:System.Object.ToString"/> on the <see cref="P:System.Lazy`1.Value"/>.</returns>
- <exception cref="T:System.NullReferenceException">
- The <see cref="P:System.Lazy`1.Value"/> is null.
- </exception>
- </member>
- <member name="M:System.Lazy`1.LazyInitValue">
- <summary>
- local helper method to initialize the value
- </summary>
- <returns>The inititialized T value</returns>
- </member>
- <member name="M:System.Lazy`1.CreateValue">
- <summary>Creates an instance of T using m_valueFactory in case its not null or use reflection to create a new T()</summary>
- <returns>An instance of Boxed.</returns>
- </member>
- <member name="P:System.Lazy`1.ValueForDebugDisplay">
- <summary>Gets the value of the Lazy<T> for debugging display purposes.</summary>
- </member>
- <member name="P:System.Lazy`1.Mode">
- <summary>
- Gets a value indicating whether this instance may be used concurrently from multiple threads.
- </summary>
- </member>
- <member name="P:System.Lazy`1.IsValueFaulted">
- <summary>
- Gets whether the value creation is faulted or not
- </summary>
- </member>
- <member name="P:System.Lazy`1.IsValueCreated">
- <summary>Gets a value indicating whether the <see cref="T:System.Lazy{T}"/> has been initialized.
- </summary>
- <value>true if the <see cref="T:System.Lazy{T}"/> instance has been initialized;
- otherwise, false.</value>
- <remarks>
- The initialization of a <see cref="T:System.Lazy{T}"/> instance may result in either
- a value being produced or an exception being thrown. If an exception goes unhandled during initialization,
- <see cref="P:System.Lazy`1.IsValueCreated"/> will return false.
- </remarks>
- </member>
- <!-- Badly formed XML comment ignored for member "P:System.Lazy`1.Value" -->
- <member name="T:System.Lazy`1.Boxed">
- <summary>
- wrapper class to box the initialized value, this is mainly created to avoid boxing/unboxing the value each time the value is called in case T is
- a value type
- </summary>
- </member>
- <member name="T:System.Lazy`1.LazyInternalExceptionHolder">
- <summary>
- Wrapper class to wrap the excpetion thrown by the value factory
- </summary>
- </member>
- <member name="T:System.System_LazyDebugView`1">
- <summary>A debugger view of the Lazy<T> to surface additional debugging properties and
- to ensure that the Lazy<T> does not become initialized if it was not already.</summary>
- </member>
- <member name="M:System.System_LazyDebugView`1.#ctor(System.Lazy{`0})">
- <summary>Constructs a new debugger view object for the provided Lazy object.</summary>
- <param name="lazy">A Lazy object to browse in the debugger.</param>
- </member>
- <member name="P:System.System_LazyDebugView`1.IsValueCreated">
- <summary>Returns whether the Lazy object is initialized or not.</summary>
- </member>
- <member name="P:System.System_LazyDebugView`1.Value">
- <summary>Returns the value of the Lazy object.</summary>
- </member>
- <member name="P:System.System_LazyDebugView`1.Mode">
- <summary>Returns the execution mode of the Lazy object</summary>
- </member>
- <member name="P:System.System_LazyDebugView`1.IsValueFaulted">
- <summary>Returns the execution mode of the Lazy object</summary>
- </member>
- <member name="T:System.Threading.LazyThreadSafetyMode">
- <summary>
- Specifies how a <see cref="T:System.Threading.Lazy{T}"/> instance should synchronize access among multiple threads.
- </summary>
- </member>
- <member name="F:System.Threading.LazyThreadSafetyMode.None">
- <summary>
- This mode makes no guarantees around the thread-safety of the <see cref="T:System.Threading.Lazy{T}"/> instance. If used from multiple threads, the behavior of the <see cref="T:System.Threading.Lazy{T}"/> is undefined.
- This mode should be used when a <see cref="T:System.Threading.Lazy{T}"/> is guaranteed to never be initialized from more than one thread simultaneously and high performance is crucial.
- If valueFactory throws an exception when the <see cref="T:System.Threading.Lazy{T}"/> is initialized, the exception will be cached and returned on subsequent accesses to Value. Also, if valueFactory recursively
- accesses Value on this <see cref="T:System.Threading.Lazy{T}"/> instance, a <see cref="T:System.InvalidOperationException"/> will be thrown.
- </summary>
- </member>
- <member name="F:System.Threading.LazyThreadSafetyMode.PublicationOnly">
- <summary>
- When multiple threads attempt to simultaneously initialize a <see cref="T:System.Threading.Lazy{T}"/> instance, this mode allows each thread to execute the
- valueFactory but only the first thread to complete initialization will be allowed to set the final value of the <see cref="T:System.Threading.Lazy{T}"/>.
- Once initialized successfully, any future calls to Value will return the cached result. If valueFactory throws an exception on any thread, that exception will be
- propagated out of Value. If any thread executes valueFactory without throwing an exception and, therefore, successfully sets the value, that value will be returned on
- subsequent accesses to Value from any thread. If no thread succeeds in setting the value, IsValueCreated will remain false and subsequent accesses to Value will result in
- the valueFactory delegate re-executing. Also, if valueFactory recursively accesses Value on this <see cref="T:System.Threading.Lazy{T}"/> instance, an exception will NOT be thrown.
- </summary>
- </member>
- <member name="F:System.Threading.LazyThreadSafetyMode.ExecutionAndPublication">
- <summary>
- This mode uses locks to ensure that only a single thread can initialize a <see cref="T:System.Threading.Lazy{T}"/> instance in a thread-safe manner. In general,
- taken if this mode is used in conjunction with a <see cref="T:System.Threading.Lazy{T}"/> valueFactory delegate that uses locks internally, a deadlock can occur if not
- handled carefully. If valueFactory throws an exception when the<see cref="T:System.Threading.Lazy{T}"/> is initialized, the exception will be cached and returned on
- subsequent accesses to Value. Also, if valueFactory recursively accesses Value on this <see cref="T:System.Threading.Lazy{T}"/> instance, a <see cref="T:System.InvalidOperationException"/> will be thrown.
- </summary>
- </member>
- <member name="T:System.Threading.LazyInitializer">
- <summary>
- Provides lazy initialization routines.
- </summary>
- <remarks>
- These routines avoid needing to allocate a dedicated, lazy-initialization instance, instead using
- references to ensure targets have been initialized as they are accessed.
- </remarks>
- </member>
- <member name="M:System.Threading.LazyInitializer.EnsureInitialized``1(``0@)">
- <summary>
- Initializes a target reference type with the type's default constructor if the target has not
- already been initialized.
- </summary>
- <typeparam name="T">The refence type of the reference to be initialized.</typeparam>
- <param name="target">A reference of type <typeparamref name="T"/> to initialize if it has not
- already been initialized.</param>
- <returns>The initialized reference of type <typeparamref name="T"/>.</returns>
- <exception cref="T:System.MissingMemberException">Type <typeparamref name="T"/> does not have a default
- constructor.</exception>
- <exception cref="T:System.MemberAccessException">
- Permissions to access the constructor of type <typeparamref name="T"/> were missing.
- </exception>
- <remarks>
- <para>
- This method may only be used on reference types. To ensure initialization of value
- types, see other overloads of EnsureInitialized.
- </para>
- <para>
- This method may be used concurrently by multiple threads to initialize <paramref name="target"/>.
- In the event that multiple threads access this method concurrently, multiple instances of <typeparamref name="T"/>
- may be created, but only one will be stored into <paramref name="target"/>. In such an occurrence, this method will not dispose of the
- objects that were not stored. If such objects must be disposed, it is up to the caller to determine
- if an object was not used and to then dispose of the object appropriately.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.LazyInitializer.EnsureInitialized``1(``0@,System.Func{``0})">
- <summary>
- Initializes a target reference type using the specified function if it has not already been
- initialized.
- </summary>
- <typeparam name="T">The reference type of the reference to be initialized.</typeparam>
- <param name="target">The reference of type <typeparamref name="T"/> to initialize if it has not
- already been initialized.</param>
- <param name="valueFactory">The <see cref="T:System.Func{T}"/> invoked to initialize the
- reference.</param>
- <returns>The initialized reference of type <typeparamref name="T"/>.</returns>
- <exception cref="T:System.MissingMemberException">Type <typeparamref name="T"/> does not have a
- default constructor.</exception>
- <exception cref="T:System.InvalidOperationException"><paramref name="valueFactory"/> returned
- null.</exception>
- <remarks>
- <para>
- This method may only be used on reference types, and <paramref name="valueFactory"/> may
- not return a null reference (Nothing in Visual Basic). To ensure initialization of value types or
- to allow null reference types, see other overloads of EnsureInitialized.
- </para>
- <para>
- This method may be used concurrently by multiple threads to initialize <paramref name="target"/>.
- In the event that multiple threads access this method concurrently, multiple instances of <typeparamref name="T"/>
- may be created, but only one will be stored into <paramref name="target"/>. In such an occurrence, this method will not dispose of the
- objects that were not stored. If such objects must be disposed, it is up to the caller to determine
- if an object was not used and to then dispose of the object appropriately.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.LazyInitializer.EnsureInitializedCore``1(``0@,System.Func{``0})">
- <summary>
- Initialize the target using the given delegate (slow path).
- </summary>
- <typeparam name="T">The reference type of the reference to be initialized.</typeparam>
- <param name="target">The variable that need to be initialized</param>
- <param name="valueFactory">The delegate that will be executed to initialize the target</param>
- <returns>The initialized variable</returns>
- </member>
- <member name="M:System.Threading.LazyInitializer.EnsureInitialized``1(``0@,System.Boolean@,System.Object@)">
- <summary>
- Initializes a target reference or value type with its default constructor if it has not already
- been initialized.
- </summary>
- <typeparam name="T">The type of the reference to be initialized.</typeparam>
- <param name="target">A reference or value of type <typeparamref name="T"/> to initialize if it
- has not already been initialized.</param>
- <param name="initialized">A reference to a boolean that determines whether the target has already
- been initialized.</param>
- <param name="syncLock">A reference to an object used as the mutually exclusive lock for initializing
- <paramref name="target"/>.</param>
- <returns>The initialized value of type <typeparamref name="T"/>.</returns>
- </member>
- <member name="M:System.Threading.LazyInitializer.EnsureInitialized``1(``0@,System.Boolean@,System.Object@,System.Func{``0})">
- <summary>
- Initializes a target reference or value type with a specified function if it has not already been
- initialized.
- </summary>
- <typeparam name="T">The type of the reference to be initialized.</typeparam>
- <param name="target">A reference or value of type <typeparamref name="T"/> to initialize if it
- has not already been initialized.</param>
- <param name="initialized">A reference to a boolean that determines whether the target has already
- been initialized.</param>
- <param name="syncLock">A reference to an object used as the mutually exclusive lock for initializing
- <paramref name="target"/>.</param>
- <param name="valueFactory">The <see cref="T:System.Func{T}"/> invoked to initialize the
- reference or value.</param>
- <returns>The initialized value of type <typeparamref name="T"/>.</returns>
- </member>
- <member name="M:System.Threading.LazyInitializer.EnsureInitializedCore``1(``0@,System.Boolean@,System.Object@,System.Func{``0})">
- <summary>
- Ensure the target is initialized and return the value (slow path). This overload permits nulls
- and also works for value type targets. Uses the supplied function to create the value.
- </summary>
- <typeparam name="T">The type of target.</typeparam>
- <param name="target">A reference to the target to be initialized.</param>
- <param name="initialized">A reference to a location tracking whether the target has been initialized.</param>
- <param name="syncLock">A reference to a location containing a mutual exclusive lock.</param>
- <param name="valueFactory">
- The <see cref="T:System.Func{T}"/> to invoke in order to produce the lazily-initialized value.
- </param>
- <returns>The initialized object.</returns>
- </member>
- <member name="T:System.Threading.ThreadLocalGlobalCounter">
- <summary>
- A seprate non generic class that contains a global counter for fast path instances for all Ts that has been created, and adds an upper limit for all instances
- that uses the fast path, if this limit has been reached, all new instances will use the slow path
- </summary>
- </member>
- <member name="T:System.Threading.ThreadLocal`1">
- <summary>
- Provides thread-local storage of data.
- </summary>
- <typeparam name="T">Specifies the type of data stored per-thread.</typeparam>
- <remarks>
- <para>
- With the exception of <see cref="M:System.Threading.ThreadLocal`1.Dispose"/>, all public and protected members of
- <see cref="T:System.Threading.ThreadLocal`1"/> are thread-safe and may be used
- concurrently from multiple threads.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.ThreadLocal`1.#ctor">
- <summary>
- Initializes the <see cref="T:System.Threading.ThreadLocal`1"/> instance.
- </summary>
- </member>
- <member name="M:System.Threading.ThreadLocal`1.#ctor(System.Func{`0})">
- <summary>
- Initializes the <see cref="T:System.Threading.ThreadLocal`1"/> instance with the
- specified <paramref name="valueFactory"/> function.
- </summary>
- <param name="valueFactory">
- The <see cref="T:System.Func{T}"/> invoked to produce a lazily-initialized value when
- an attempt is made to retrieve <see cref="P:System.Threading.ThreadLocal`1.Value"/> without it having been previously initialized.
- </param>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="valueFactory"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Threading.ThreadLocal`1.Finalize">
- <summary>
- Releases the resources used by this <see cref="T:System.Threading.ThreadLocal{T}" /> instance.
- </summary>
- </member>
- <member name="M:System.Threading.ThreadLocal`1.Dispose">
- <summary>
- Releases the resources used by this <see cref="T:System.Threading.ThreadLocal{T}" /> instance.
- </summary>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.ThreadLocal{T}"/>, this method is not thread-safe.
- </remarks>
- </member>
- <member name="M:System.Threading.ThreadLocal`1.Dispose(System.Boolean)">
- <summary>
- Releases the resources used by this <see cref="T:System.Threading.ThreadLocal{T}"/> instance.
- </summary>
- <param name="disposing">
- A Boolean value that indicates whether this method is being called due to a call to <see cref="M:System.Threading.ThreadLocal`1.Dispose"/>.
- </param>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.ThreadLocal{T}"/>, this method is not thread-safe.
- </remarks>
- </member>
- <member name="M:System.Threading.ThreadLocal`1.FindNextTypeIndex">
- <summary>
- Tries to get a unique index for the current instance of type T, it first tries to get it from the pool if it is not empty, otherwise it
- increments the global counter if it is still below the maximum, otherwise it fails and returns -1
- </summary>
- <returns>True if there is an index available, false otherwise</returns>
- </member>
- <member name="M:System.Threading.ThreadLocal`1.GetTypesFromIndex">
- <summary>
- Gets an array of types that will be used as generic parameters for the GenericHolder class
- </summary>
- <returns>The types array</returns>
- </member>
- <member name="M:System.Threading.ThreadLocal`1.ToString">
- <summary>Creates and returns a string representation of this instance for the current thread.</summary>
- <returns>The result of calling <see cref="M:System.Object.ToString"/> on the <see cref="P:System.Threading.ThreadLocal`1.Value"/>.</returns>
- <exception cref="T:System.NullReferenceException">
- The <see cref="P:System.Threading.ThreadLocal`1.Value"/> for the current thread is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- The initialization function referenced <see cref="P:System.Threading.ThreadLocal`1.Value"/> in an improper manner.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.ThreadLocal`1"/> instance has been disposed.
- </exception>
- <remarks>
- Calling this method forces initialization for the current thread, as is the
- case with accessing <see cref="P:System.Threading.ThreadLocal`1.Value"/> directly.
- </remarks>
- </member>
- <member name="M:System.Threading.ThreadLocal`1.CreateValue">
- <summary>
- Private helper function to lazily create the value using the calueSelector if specified in the constructor or the default parameterless constructor
- </summary>
- <returns>Returns the boxed object</returns>
- </member>
- <member name="P:System.Threading.ThreadLocal`1.Value">
- <summary>
- Gets or sets the value of this instance for the current thread.
- </summary>
- <exception cref="T:System.InvalidOperationException">
- The initialization function referenced <see cref="P:System.Threading.ThreadLocal`1.Value"/> in an improper manner.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.ThreadLocal`1"/> instance has been disposed.
- </exception>
- <remarks>
- If this instance was not previously initialized for the current thread,
- accessing <see cref="P:System.Threading.ThreadLocal`1.Value"/> will attempt to initialize it. If an initialization function was
- supplied during the construction, that initialization will happen by invoking the function
- to retrieve the initial value for <see cref="P:System.Threading.ThreadLocal`1.Value"/>. Otherwise, the default value of
- <typeparamref name="T"/> will be used.
- </remarks>
- </member>
- <member name="P:System.Threading.ThreadLocal`1.IsValueCreated">
- <summary>
- Gets whether <see cref="P:System.Threading.ThreadLocal`1.Value"/> is initialized on the current thread.
- </summary>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.ThreadLocal`1"/> instance has been disposed.
- </exception>
- </member>
- <member name="P:System.Threading.ThreadLocal`1.ValueForDebugDisplay">
- <summary>Gets the value of the ThreadLocal<T> for debugging display purposes. It takes care of getting
- the value for the current thread in the ThreadLocal mode.</summary>
- </member>
- <member name="T:System.Threading.ThreadLocal`1.HolderBase">
- <summary>
- The base abstract class for the holder
- </summary>
- </member>
- <member name="T:System.Threading.ThreadLocal`1.TLSHolder">
- <summary>
- The TLS holder representation
- </summary>
- </member>
- <member name="T:System.Threading.ThreadLocal`1.GenericHolder`3">
- <summary>
- The generic holder representation
- </summary>
- <typeparam name="U">Dummy param</typeparam>
- <typeparam name="V">Dummy param</typeparam>
- <typeparam name="W">Dummy param</typeparam>
- </member>
- <member name="T:System.Threading.ThreadLocal`1.Boxed">
- <summary>
- wrapper to the actual value
- </summary>
- </member>
- <member name="T:System.Threading.SystemThreading_ThreadLocalDebugView`1">
- <summary>A debugger view of the ThreadLocal<T> to surface additional debugging properties and
- to ensure that the ThreadLocal<T> does not become initialized if it was not already.</summary>
- </member>
- <member name="M:System.Threading.SystemThreading_ThreadLocalDebugView`1.#ctor(System.Threading.ThreadLocal{`0})">
- <summary>Constructs a new debugger view object for the provided ThreadLocal object.</summary>
- <param name="tlocal">A ThreadLocal object to browse in the debugger.</param>
- </member>
- <member name="P:System.Threading.SystemThreading_ThreadLocalDebugView`1.IsValueCreated">
- <summary>Returns whether the ThreadLocal object is initialized or not.</summary>
- </member>
- <member name="P:System.Threading.SystemThreading_ThreadLocalDebugView`1.Value">
- <summary>Returns the value of the ThreadLocal object.</summary>
- </member>
- <member name="T:System.Threading.SemaphoreSlim">
- <summary>
- Limits the number of threads that can access a resource or pool of resources concurrently.
- </summary>
- <remarks>
- <para>
- The <see cref="T:System.Threading.SemaphoreSlim"/> provides a lightweight semaphore class that doesn't
- use Windows kernel semaphores.
- </para>
- <para>
- All public and protected members of <see cref="T:System.Threading.SemaphoreSlim"/> are thread-safe and may be used
- concurrently from multiple threads, with the exception of Dispose, which
- must only be used when all other operations on the <see cref="T:System.Threading.SemaphoreSlim"/> have
- completed.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.#ctor(System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.SemaphoreSlim"/> class, specifying
- the initial number of requests that can be granted concurrently.
- </summary>
- <param name="initialCount">The initial number of requests for the semaphore that can be granted
- concurrently.</param>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="initialCount"/>
- is less than 0.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.#ctor(System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.SemaphoreSlim"/> class, specifying
- the initial and maximum number of requests that can be granted concurrently.
- </summary>
- <param name="initialCount">The initial number of requests for the semaphore that can be granted
- concurrently.</param>
- <param name="maxCount">The maximum number of requests for the semaphore that can be granted
- concurrently.</param>
- <exception cref="T:System.ArgumentOutOfRangeException"> <paramref name="initialCount"/>
- is less than 0. -or-
- <paramref name="initialCount"/> is greater than <paramref name="maxCount"/>. -or-
- <paramref name="maxCount"/> is less than 0.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Wait">
- <summary>
- Blocks the current thread until it can enter the <see cref="T:System.Threading.SemaphoreSlim"/>.
- </summary>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Wait(System.Threading.CancellationToken)">
- <summary>
- Blocks the current thread until it can enter the <see cref="T:System.Threading.SemaphoreSlim"/>, while observing a
- <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> token to
- observe.</param>
- <exception cref="T:System.OperationCanceledException"><paramref name="cancellationToken"/> was
- canceled.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Wait(System.TimeSpan)">
- <summary>
- Blocks the current thread until it can enter the <see cref="T:System.Threading.SemaphoreSlim"/>, using a <see cref="T:System.TimeSpan"/> to measure the time interval.
- </summary>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds
- to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <returns>true if the current thread successfully entered the <see cref="T:System.Threading.SemaphoreSlim"/>;
- otherwise, false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative
- number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater
- than <see cref="F:System.Int32.MaxValue"/>.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Wait(System.TimeSpan,System.Threading.CancellationToken)">
- <summary>
- Blocks the current thread until it can enter the <see cref="T:System.Threading.SemaphoreSlim"/>, using a <see cref="T:System.TimeSpan"/> to measure the time interval, while observing a <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds
- to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <returns>true if the current thread successfully entered the <see cref="T:System.Threading.SemaphoreSlim"/>;
- otherwise, false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative
- number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater
- than <see cref="F:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.OperationCanceledException"><paramref name="cancellationToken"/> was canceled.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Wait(System.Int32)">
- <summary>
- Blocks the current thread until it can enter the <see cref="T:System.Threading.SemaphoreSlim"/>, using a 32-bit
- signed integer to measure the time interval.
- </summary>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/>(-1) to wait indefinitely.</param>
- <returns>true if the current thread successfully entered the <see cref="T:System.Threading.SemaphoreSlim"/>;
- otherwise, false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Wait(System.Int32,System.Threading.CancellationToken)">
- <summary>
- Blocks the current thread until it can enter the <see cref="T:System.Threading.SemaphoreSlim"/>,
- using a 32-bit signed integer to measure the time interval,
- while observing a <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/>(-1) to
- wait indefinitely.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to observe.</param>
- <returns>true if the current thread successfully entered the <see cref="T:System.Threading.SemaphoreSlim"/>; otherwise, false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a negative number other than -1,
- which represents an infinite time-out.</exception>
- <exception cref="T:System.OperationCanceledException"><paramref name="cancellationToken"/> was canceled.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.WaitUntilCountOrTimeout(System.Int32,System.Int64,System.Threading.CancellationToken)">
- <summary>
- Local helper function, waits on the monitor until the monitor recieves signal or the
- timeout is expired
- </summary>
- <param name="millisecondsTimeout">The maximum timeout</param>
- <param name="startTimeTicks">The start ticks to calculate the elapsed time</param>
- <param name="cancellationToken">The CancellationToken to observe.</param>
- <returns>true if the monitor recieved a signal, false if the timeout expired</returns>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Release">
- <summary>
- Exits the <see cref="T:System.Threading.SemaphoreSlim"/> once.
- </summary>
- <returns>The previous count of the <see cref="T:System.Threading.SemaphoreSlim"/>.</returns>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Release(System.Int32)">
- <summary>
- Exits the <see cref="T:System.Threading.SemaphoreSlim"/> a specified number of times.
- </summary>
- <param name="releaseCount">The number of times to exit the semaphore.</param>
- <returns>The previous count of the <see cref="T:System.Threading.SemaphoreSlim"/>.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="releaseCount"/> is less
- than 1.</exception>
- <exception cref="T:System.Threading.SemaphoreFullException">The <see cref="T:System.Threading.SemaphoreSlim"/> has
- already reached its maximum size.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Dispose">
- <summary>
- Releases all resources used by the current instance of <see cref="T:System.Threading.SemaphoreSlim"/>.
- </summary>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.SemaphoreSlim"/>, <see cref="M:System.Threading.SemaphoreSlim.Dispose"/> is not
- thread-safe and may not be used concurrently with other members of this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.Dispose(System.Boolean)">
- <summary>
- When overridden in a derived class, releases the unmanaged resources used by the
- <see cref="T:System.Threading.ManualResetEventSlim"/>, and optionally releases the managed resources.
- </summary>
- <param name="disposing">true to release both managed and unmanaged resources;
- false to release only unmanaged resources.</param>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.SemaphoreSlim"/>, <see cref="M:System.Threading.SemaphoreSlim.Dispose(System.Boolean)"/> is not
- thread-safe and may not be used concurrently with other members of this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.UpdateTimeOut(System.Int64,System.Int32)">
- <summary>
- Helper function to measure and update the wait time
- </summary>
- <param name="startTimeTicks"> The first time (in Ticks) observed when the wait started</param>
- <param name="originalWaitMillisecondsTimeout">The orginal wait timeoutout in milliseconds</param>
- <returns>The new wait time in milliseconds, -1 if the time expired</returns>
- </member>
- <member name="F:System.Threading.SemaphoreSlim.s_cancellationTokenCanceledEventHandler">
- <summary>
- Private helper method to wake up waiters when a cancellationToken gets canceled.
- </summary>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.CheckDispose">
- <summary>
- Checks the dispose status by checking the lock object, if it is null means that object
- has been disposed and throw ObjectDisposedException
- </summary>
- </member>
- <member name="M:System.Threading.SemaphoreSlim.GetResourceString(System.String)">
- <summary>
- local helper function to retrieve the exception string message from the resource file
- </summary>
- <param name="str">The key string</param>
- </member>
- <member name="P:System.Threading.SemaphoreSlim.CurrentCount">
- <summary>
- Gets the current count of the <see cref="T:System.Threading.SemaphoreSlim"/>.
- </summary>
- <value>The current count of the <see cref="T:System.Threading.SemaphoreSlim"/>.</value>
- </member>
- <member name="P:System.Threading.SemaphoreSlim.AvailableWaitHandle">
- <summary>
- Returns a <see cref="T:System.Threading.WaitHandle"/> that can be used to wait on the semaphore.
- </summary>
- <value>A <see cref="T:System.Threading.WaitHandle"/> that can be used to wait on the
- semaphore.</value>
- <remarks>
- A successful wait on the <see cref="P:System.Threading.SemaphoreSlim.AvailableWaitHandle"/> does not imply a successful wait on
- the <see cref="T:System.Threading.SemaphoreSlim"/> itself, nor does it decrement the semaphore's
- count. <see cref="P:System.Threading.SemaphoreSlim.AvailableWaitHandle"/> exists to allow a thread to block waiting on multiple
- semaphores, but such a wait should be followed by a true wait on the target semaphore.
- </remarks>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Threading.SemaphoreSlim"/> has been disposed.</exception>
- </member>
- <member name="T:System.Threading.SpinWait">
- <summary>
- Provides support for spin-based waiting.
- </summary>
- <remarks>
- <para>
- <see cref="T:System.Threading.SpinWait"/> encapsulates common spinning logic. On single-processor machines, yields are
- always used instead of busy waits, and on computers with Intel™ processors employing Hyper-Threading™
- technology, it helps to prevent hardware thread starvation. SpinWait encapsulates a good mixture of
- spinning and true yielding.
- </para>
- <para>
- <see cref="T:System.Threading.SpinWait"/> is a value type, which means that low-level code can utilize SpinWait without
- fear of unnecessary allocation overheads. SpinWait is not generally useful for ordinary applications.
- In most cases, you should use the synchronization classes provided by the .NET Framework, such as
- <see cref="T:System.Threading.Monitor"/>. For most purposes where spin waiting is required, however,
- the <see cref="T:System.Threading.SpinWait"/> type should be preferred over the <see cref="M:System.Threading.Thread.SpinWait(System.Int32)"/> method.
- </para>
- <para>
- While SpinWait is designed to be used in concurrent applications, it is not designed to be
- used from multiple threads concurrently. SpinWait's members are not thread-safe. If multiple
- threads must spin, each should use its own instance of SpinWait.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.SpinWait.SpinOnce">
- <summary>
- Performs a single spin.
- </summary>
- <remarks>
- This is typically called in a loop, and may change in behavior based on the number of times a
- <see cref="M:System.Threading.SpinWait.SpinOnce"/> has been called thus far on this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.SpinWait.Reset">
- <summary>
- Resets the spin counter.
- </summary>
- <remarks>
- This makes <see cref="M:System.Threading.SpinWait.SpinOnce"/> and <see cref="P:System.Threading.SpinWait.NextSpinWillYield"/> behave as though no calls
- to <see cref="M:System.Threading.SpinWait.SpinOnce"/> had been issued on this instance. If a <see cref="T:System.Threading.SpinWait"/> instance
- is reused many times, it may be useful to reset it to avoid yielding too soon.
- </remarks>
- </member>
- <member name="M:System.Threading.SpinWait.SpinUntil(System.Func{System.Boolean})">
- <summary>
- Spins until the specified condition is satisfied.
- </summary>
- <param name="condition">A delegate to be executed over and over until it returns true.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="condition"/> argument is null.</exception>
- </member>
- <member name="M:System.Threading.SpinWait.SpinUntil(System.Func{System.Boolean},System.TimeSpan)">
- <summary>
- Spins until the specified condition is satisfied or until the specified timeout is expired.
- </summary>
- <param name="condition">A delegate to be executed over and over until it returns true.</param>
- <param name="timeout">
- A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds to wait,
- or a TimeSpan that represents -1 milliseconds to wait indefinitely.</param>
- <returns>True if the condition is satisfied within the timeout; otherwise, false</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="condition"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative number
- other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than
- <see cref="F:System.Int32.MaxValue"/>.</exception>
- </member>
- <member name="M:System.Threading.SpinWait.SpinUntil(System.Func{System.Boolean},System.Int32)">
- <summary>
- Spins until the specified condition is satisfied or until the specified timeout is expired.
- </summary>
- <param name="condition">A delegate to be executed over and over until it returns true.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param>
- <returns>True if the condition is satisfied within the timeout; otherwise, false</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="condition"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- </member>
- <member name="P:System.Threading.SpinWait.Count">
- <summary>
- Gets the number of times <see cref="M:System.Threading.SpinWait.SpinOnce"/> has been called on this instance.
- </summary>
- </member>
- <member name="P:System.Threading.SpinWait.NextSpinWillYield">
- <summary>
- Gets whether the next call to <see cref="M:System.Threading.SpinWait.SpinOnce"/> will yield the processor, triggering a
- forced context switch.
- </summary>
- <value>Whether the next call to <see cref="M:System.Threading.SpinWait.SpinOnce"/> will yield the processor, triggering a
- forced context switch.</value>
- <remarks>
- On a single-CPU machine, <see cref="M:System.Threading.SpinWait.SpinOnce"/> always yields the processor. On machines with
- multiple CPUs, <see cref="M:System.Threading.SpinWait.SpinOnce"/> may yield after an unspecified number of calls.
- </remarks>
- </member>
- <member name="T:System.Threading.PlatformHelper">
- <summary>
- A helper class to get the number of preocessors, it updates the numbers of processors every sampling interval
- </summary>
- </member>
- <member name="P:System.Threading.PlatformHelper.ProcessorCount">
- <summary>
- Gets the number of available processors
- </summary>
- </member>
- <member name="P:System.Threading.PlatformHelper.IsSingleProcessor">
- <summary>
- Gets whether the current machine has only a single processor.
- </summary>
- </member>
- <member name="T:System.Threading.SpinLock">
- <summary>
- Provides a mutual exclusion lock primitive where a thread trying to acquire the lock waits in a loop
- repeatedly checking until the lock becomes available.
- </summary>
- <remarks>
- <para>
- Spin locks can be used for leaf-level locks where the object allocation implied by using a <see cref="T:System.Threading.Monitor"/>, in size or due to garbage collection pressure, is overly
- expensive. Avoiding blocking is another reason that a spin lock can be useful, however if you expect
- any significant amount of blocking, you are probably best not using spin locks due to excessive
- spinning. Spinning can be beneficial when locks are fine grained and large in number (for example, a
- lock per node in a linked list) as well as when lock hold times are always extremely short. In
- general, while holding a spin lock, one should avoid blocking, calling anything that itself may
- block, holding more than one spin lock at once, making dynamically dispatched calls (interface and
- virtuals), making statically dispatched calls into any code one doesn't own, or allocating memory.
- </para>
- <para>
- <see cref="T:System.Threading.SpinLock"/> should only be used when it's been determined that doing so will improve an
- application's performance. It's also important to note that <see cref="T:System.Threading.SpinLock"/> is a value type,
- for performance reasons. As such, one must be very careful not to accidentally copy a SpinLock
- instance, as the two instances (the original and the copy) would then be completely independent of
- one another, which would likely lead to erroneous behavior of the application. If a SpinLock instance
- must be passed around, it should be passed by reference rather than by value.
- </para>
- <para>
- Do not store <see cref="T:System.Threading.SpinLock"/> instances in readonly fields.
- </para>
- <para>
- All members of <see cref="T:System.Threading.SpinLock"/> are thread-safe and may be used from multiple threads
- concurrently.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.SpinLock.#ctor(System.Boolean)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.SpinLock"/>
- structure with the option to track thread IDs to improve debugging.
- </summary>
- <remarks>
- The default constructor for <see cref="T:System.Threading.SpinLock"/> tracks thread ownership.
- </remarks>
- <param name="enableThreadOwnerTracking">Whether to capture and use thread IDs for debugging
- purposes.</param>
- </member>
- <member name="M:System.Threading.SpinLock.Enter(System.Boolean@)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.SpinLock"/>
- structure with the option to track thread IDs to improve debugging.
- </summary>
- <remarks>
- The default constructor for <see cref="T:System.Threading.SpinLock"/> tracks thread ownership.
- </remarks>
- <summary>
- Acquires the lock in a reliable manner, such that even if an exception occurs within the method
- call, <paramref name="lockTaken"/> can be examined reliably to determine whether the lock was
- acquired.
- </summary>
- <remarks>
- <see cref="T:System.Threading.SpinLock"/> is a non-reentrant lock, meaning that if a thread holds the lock, it is
- not allowed to enter the lock again. If thread ownership tracking is enabled (whether it's
- enabled is available through <see cref="P:System.Threading.SpinLock.IsThreadOwnerTrackingEnabled"/>), an exception will be
- thrown when a thread tries to re-enter a lock it already holds. However, if thread ownership
- tracking is disabled, attempting to enter a lock already held will result in deadlock.
- </remarks>
- <param name="lockTaken">True if the lock is acquired; otherwise, false. <paramref name="lockTaken"/> must be initialized to false prior to calling this method.</param>
- <exception cref="T:System.Threading.LockRecursionException">
- Thread ownership tracking is enabled, and the current thread has already acquired this lock.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="lockTaken"/> argument must be initialized to false prior to calling Enter.
- </exception>
- </member>
- <member name="M:System.Threading.SpinLock.TryEnter(System.Boolean@)">
- <summary>
- Attempts to acquire the lock in a reliable manner, such that even if an exception occurs within
- the method call, <paramref name="lockTaken"/> can be examined reliably to determine whether the
- lock was acquired.
- </summary>
- <remarks>
- Unlike <see cref="M:System.Threading.SpinLock.Enter(System.Boolean@)"/>, TryEnter will not block waiting for the lock to be available. If the
- lock is not available when TryEnter is called, it will return immediately without any further
- spinning.
- </remarks>
- <param name="lockTaken">True if the lock is acquired; otherwise, false. <paramref name="lockTaken"/> must be initialized to false prior to calling this method.</param>
- <exception cref="T:System.Threading.LockRecursionException">
- Thread ownership tracking is enabled, and the current thread has already acquired this lock.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="lockTaken"/> argument must be initialized to false prior to calling TryEnter.
- </exception>
- </member>
- <member name="M:System.Threading.SpinLock.TryEnter(System.TimeSpan,System.Boolean@)">
- <summary>
- Attempts to acquire the lock in a reliable manner, such that even if an exception occurs within
- the method call, <paramref name="lockTaken"/> can be examined reliably to determine whether the
- lock was acquired.
- </summary>
- <remarks>
- Unlike <see cref="M:System.Threading.SpinLock.Enter(System.Boolean@)"/>, TryEnter will not block indefinitely waiting for the lock to be
- available. It will block until either the lock is available or until the <paramref name="timeout"/>
- has expired.
- </remarks>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds
- to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <param name="lockTaken">True if the lock is acquired; otherwise, false. <paramref name="lockTaken"/> must be initialized to false prior to calling this method.</param>
- <exception cref="T:System.Threading.LockRecursionException">
- Thread ownership tracking is enabled, and the current thread has already acquired this lock.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="lockTaken"/> argument must be initialized to false prior to calling TryEnter.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative
- number other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater
- than <see cref="F:System.Int32.MaxValue"/> milliseconds.
- </exception>
- </member>
- <member name="M:System.Threading.SpinLock.TryEnter(System.Int32,System.Boolean@)">
- <summary>
- Attempts to acquire the lock in a reliable manner, such that even if an exception occurs within
- the method call, <paramref name="lockTaken"/> can be examined reliably to determine whether the
- lock was acquired.
- </summary>
- <remarks>
- Unlike <see cref="M:System.Threading.SpinLock.Enter(System.Boolean@)"/>, TryEnter will not block indefinitely waiting for the lock to be
- available. It will block until either the lock is available or until the <paramref name="millisecondsTimeout"/> has expired.
- </remarks>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param>
- <param name="lockTaken">True if the lock is acquired; otherwise, false. <paramref name="lockTaken"/> must be initialized to false prior to calling this method.</param>
- <exception cref="T:System.Threading.LockRecursionException">
- Thread ownership tracking is enabled, and the current thread has already acquired this lock.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="lockTaken"/> argument must be initialized to false prior to calling TryEnter.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is
- a negative number other than -1, which represents an infinite time-out.</exception>
- </member>
- <member name="M:System.Threading.SpinLock.ContinueTryEnter(System.Int32,System.Boolean@)">
- <summary>
- Try acquire the lock with long path, this is usually called after the first path in Enter and
- TryEnter failed The reason for short path is to make it inline in the run time which improves the
- performance. This method assumed that the parameter are validated in Enter ir TryENter method
- </summary>
- <param name="millisecondsTimeout">The timeout milliseconds</param>
- <param name="lockTaken">The lockTaken param</param>
- </member>
- <member name="M:System.Threading.SpinLock.DecrementWaiters">
- <summary>
- decrements the waiters, in case of the timeout is expired
- </summary>
- </member>
- <member name="M:System.Threading.SpinLock.ContinueTryEnterWithThreadTracking(System.Int32,System.Int64,System.Boolean@)">
- <summary>
- ContinueTryEnter for the thread tracking mode enabled
- </summary>
- </member>
- <member name="M:System.Threading.SpinLock.TimeoutExpired(System.Int64,System.Int32)">
- <summary>
- Helper function to validate the timeout
- </summary>
- <param name="startTicks"> The start time in ticks</param>
- <param name="originalWaitTime">The orginal wait time</param>
- <returns>True if expired, false otherwise</returns>
- </member>
- <member name="M:System.Threading.SpinLock.Exit">
- <summary>
- Releases the lock.
- </summary>
- <remarks>
- The default overload of <see cref="M:System.Threading.SpinLock.Exit"/> provides the same behavior as if calling <see cref="M:System.Threading.SpinLock.Exit(System.Boolean)"/> using true as the argument.
- </remarks>
- <exception cref="T:System.Threading.SynchronizationLockException">
- Thread ownership tracking is enabled, and the current thread is not the owner of this lock.
- </exception>
- </member>
- <member name="M:System.Threading.SpinLock.Exit(System.Boolean)">
- <summary>
- Releases the lock.
- </summary>
- <param name="useMemoryBarrier">
- A Boolean value that indicates whether a memory fence should be issued in order to immediately
- publish the exit operation to other threads.
- </param>
- <remarks>
- Calling <see cref="M:System.Threading.SpinLock.Exit(System.Boolean)"/> with the <paramref name="useMemoryBarrier"/> argument set to
- true will improve the fairness of the lock at the expense of some performance. The default <see cref="M:System.Threading.SpinLock.Enter(System.Boolean@)"/>
- overload behaves as if specifying true for <paramref name="useMemoryBarrier"/>.
- </remarks>
- <exception cref="T:System.Threading.SynchronizationLockException">
- Thread ownership tracking is enabled, and the current thread is not the owner of this lock.
- </exception>
- </member>
- <member name="P:System.Threading.SpinLock.IsHeld">
- <summary>
- Gets whether the lock is currently held by any thread.
- </summary>
- </member>
- <member name="P:System.Threading.SpinLock.IsHeldByCurrentThread">
- <summary>
- Gets whether the lock is currently held by any thread.
- </summary>
- <summary>
- Gets whether the lock is held by the current thread.
- </summary>
- <remarks>
- If the lock was initialized to track owner threads, this will return whether the lock is acquired
- by the current thread. It is invalid to use this property when the lock was initialized to not
- track thread ownership.
- </remarks>
- <exception cref="T:System.InvalidOperationException">
- Thread ownership tracking is disabled.
- </exception>
- </member>
- <member name="P:System.Threading.SpinLock.IsThreadOwnerTrackingEnabled">
- <summary>Gets whether thread ownership tracking is enabled for this instance.</summary>
- </member>
- <member name="T:System.Threading.SpinLock.SystemThreading_SpinLockDebugView">
- <summary>
- Internal class used by debug type proxy attribute to display the owner thread ID
- </summary>
- </member>
- <member name="M:System.Threading.SpinLock.SystemThreading_SpinLockDebugView.#ctor(System.Threading.SpinLock)">
- <summary>
- SystemThreading_SpinLockDebugView constructor
- </summary>
- <param name="spinLock">The SpinLock to be proxied.</param>
- </member>
- <member name="P:System.Threading.SpinLock.SystemThreading_SpinLockDebugView.IsHeldByCurrentThread">
- <summary>
- Checks if the lock is held by the current thread or not
- </summary>
- </member>
- <member name="P:System.Threading.SpinLock.SystemThreading_SpinLockDebugView.OwnerThreadID">
- <summary>
- Gets the current owner thread, zero if it is released
- </summary>
- </member>
- <member name="P:System.Threading.SpinLock.SystemThreading_SpinLockDebugView.IsHeld">
- <summary>
- Gets whether the lock is currently held by any thread or not.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.ParallelOptions">
- <summary>
- Stores options that configure the operation of methods on the
- <see cref="T:System.Threading.Tasks.Parallel">Parallel</see> class.
- </summary>
- <remarks>
- By default, methods on the Parallel class attempt to utilize all available processors, are non-cancelable, and target
- the default TaskScheduler (TaskScheduler.Default). <see cref="T:System.Threading.Tasks.ParallelOptions"/> enables
- overriding these defaults.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.ParallelOptions.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.ParallelOptions"/> class.
- </summary>
- <remarks>
- This constructor initializes the instance with default values. <see cref="P:System.Threading.Tasks.ParallelOptions.MaxDegreeOfParallelism"/>
- is initialized to -1, signifying that there is no upper bound set on how much parallelism should
- be employed. <see cref="P:System.Threading.Tasks.ParallelOptions.CancellationToken"/> is initialized to a non-cancelable token,
- and <see cref="P:System.Threading.Tasks.ParallelOptions.TaskScheduler"/> is initialized to the default scheduler (TaskScheduler.Default).
- All of these defaults may be overwritten using the property set accessors on the instance.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.ParallelOptions.TaskScheduler">
- <summary>
- Gets or sets the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- associated with this <see cref="T:System.Threading.Tasks.ParallelOptions"/> instance. Setting this property to null
- indicates that the current scheduler should be used.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelOptions.MaxDegreeOfParallelism">
- <summary>
- Gets or sets the maximum degree of parallelism enabled by this ParallelOptions instance.
- </summary>
- <remarks>
- The <see cref="P:System.Threading.Tasks.ParallelOptions.MaxDegreeOfParallelism"/> limits the number of concurrent operations run by <see cref="T:System.Threading.Tasks.Parallel">Parallel</see> method calls that are passed this
- ParallelOptions instance to the set value, if it is positive. If <see cref="P:System.Threading.Tasks.ParallelOptions.MaxDegreeOfParallelism"/> is -1, then there is no limit placed on the number of concurrently
- running operations.
- </remarks>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The exception that is thrown when this <see cref="P:System.Threading.Tasks.ParallelOptions.MaxDegreeOfParallelism"/> is set to 0 or some
- value less than -1.
- </exception>
- </member>
- <member name="P:System.Threading.Tasks.ParallelOptions.CancellationToken">
- <summary>
- Gets or sets the <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- associated with this <see cref="T:System.Threading.Tasks.ParallelOptions"/> instance.
- </summary>
- <remarks>
- Providing a <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- to a <see cref="T:System.Threading.Tasks.Parallel">Parallel</see> method enables the operation to be
- exited early. Code external to the operation may cancel the token, and if the operation observes the
- token being set, it may exit early by throwing an
- <see cref="T:System.OperationCanceledException"/>.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.Parallel">
- <summary>
- Provides support for parallel loops and regions.
- </summary>
- <remarks>
- The <see cref="T:System.Threading.Tasks.Parallel"/> class provides library-based data parallel replacements
- for common operations such as for loops, for each loops, and execution of a set of statements.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.Invoke(System.Action[])">
- <summary>
- Executes each of the provided actions, possibly in parallel.
- </summary>
- <param name="actions">An array of <see cref="T:System.Action">Actions</see> to execute.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="actions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="actions"/> array contains a null element.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown when any
- action in the <paramref name="actions"/> array throws an exception.</exception>
- <remarks>
- This method can be used to execute a set of operations, potentially in parallel.
- No guarantees are made about the order in which the operations execute or whether
- they execute in parallel. This method does not return until each of the
- provided operations has completed, regardless of whether completion
- occurs due to normal or exceptional termination.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.Invoke(System.Threading.Tasks.ParallelOptions,System.Action[])">
- <summary>
- Executes each of the provided actions, possibly in parallel.
- </summary>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="actions">An array of <see cref="T:System.Action">Actions</see> to execute.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="actions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="actions"/> array contains a null element.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> is set.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown when any
- action in the <paramref name="actions"/> array throws an exception.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <remarks>
- This method can be used to execute a set of operations, potentially in parallel.
- No guarantees are made about the order in which the operations execute or whether
- the they execute in parallel. This method does not return until each of the
- provided operations has completed, regardless of whether completion
- occurs due to normal or exceptional termination.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For(System.Int32,System.Int32,System.Action{System.Int32})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the iteration count (an Int32) as a parameter.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For(System.Int64,System.Int64,System.Action{System.Int64})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the iteration count (an Int64) as a parameter.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For(System.Int32,System.Int32,System.Threading.Tasks.ParallelOptions,System.Action{System.Int32})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the iteration count (an Int32) as a parameter.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For(System.Int64,System.Int64,System.Threading.Tasks.ParallelOptions,System.Action{System.Int64})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the iteration count (an Int64) as a parameter.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For(System.Int32,System.Int32,System.Action{System.Int32,System.Threading.Tasks.ParallelLoopState})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the following parameters: the iteration count (an Int32),
- and a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely.
- </para>
- <para>
- Calling <see cref="M:System.Threading.Tasks.ParallelLoopState.Break">ParallelLoopState.Break()</see>
- informs the For operation that iterations after the current one need not
- execute. However, all iterations before the current one will still need to be executed if they have not already.
- Therefore, calling Break is similar to using a break operation within a
- conventional for loop in a language like C#, but it is not a perfect substitute: for example, there is no guarantee that iterations
- after the current one will definitely not execute.
- </para>
- <para>
- If executing all iterations before the current one is not necessary,
- <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop">ParallelLoopState.Stop()</see>
- should be preferred to using Break. Calling Stop informs the For loop that it may abandon all remaining
- iterations, regardless of whether they're for interations above or below the current,
- since all required work has already been completed. As with Break, however, there are no guarantees regarding
- which other iterations will not execute.
- </para>
- <para>
- When a loop is ended prematurely, the <see cref="T:ParallelLoopState"/> that's returned will contain
- relevant information about the loop's completion.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For(System.Int64,System.Int64,System.Action{System.Int64,System.Threading.Tasks.ParallelLoopState})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the following parameters: the iteration count (an Int64),
- and a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For(System.Int32,System.Int32,System.Threading.Tasks.ParallelOptions,System.Action{System.Int32,System.Threading.Tasks.ParallelLoopState})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the following parameters: the iteration count (an Int32),
- and a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For(System.Int64,System.Int64,System.Threading.Tasks.ParallelOptions,System.Action{System.Int64,System.Threading.Tasks.ParallelLoopState})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the following parameters: the iteration count (an Int64),
- and a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For``1(System.Int32,System.Int32,System.Func{``0},System.Func{System.Int32,System.Threading.Tasks.ParallelLoopState,``0,``0},System.Action{``0})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the following parameters: the iteration count (an Int32),
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and some local state that may be shared amongst iterations
- that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For``1(System.Int64,System.Int64,System.Func{``0},System.Func{System.Int64,System.Threading.Tasks.ParallelLoopState,``0,``0},System.Action{``0})">
- <summary>
- Executes a for loop in which iterations may run in parallel. Supports 64-bit indices.
- </summary>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the following parameters: the iteration count (an Int64),
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and some local state that may be shared amongst iterations
- that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For``1(System.Int32,System.Int32,System.Threading.Tasks.ParallelOptions,System.Func{``0},System.Func{System.Int32,System.Threading.Tasks.ParallelLoopState,``0,``0},System.Action{``0})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the following parameters: the iteration count (an Int32),
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and some local state that may be shared amongst iterations
- that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.For``1(System.Int64,System.Int64,System.Threading.Tasks.ParallelOptions,System.Func{``0},System.Func{System.Int64,System.Threading.Tasks.ParallelLoopState,``0,``0},System.Action{``0})">
- <summary>
- Executes a for loop in which iterations may run in parallel.
- </summary>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="fromInclusive">The start index, inclusive.</param>
- <param name="toExclusive">The end index, exclusive.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <paramref name="body"/> delegate is invoked once for each value in the iteration range:
- [fromInclusive, toExclusive). It is provided with the following parameters: the iteration count (an Int64),
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and some local state that may be shared amongst iterations
- that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForWorker``1(System.Int32,System.Int32,System.Threading.Tasks.ParallelOptions,System.Action{System.Int32},System.Action{System.Int32,System.Threading.Tasks.ParallelLoopState},System.Func{System.Int32,System.Threading.Tasks.ParallelLoopState,``0,``0},System.Func{``0},System.Action{``0})">
- <summary>
- Performs the major work of the parallel for loop. It assumes that argument validation has already
- been performed by the caller. This function's whole purpose in life is to enable as much reuse of
- common implementation details for the various For overloads we offer. Without it, we'd end up
- with lots of duplicate code. It handles: (1) simple for loops, (2) for loops that depend on
- ParallelState, and (3) for loops with thread local data.
-
- @TODO: at some point in the future, we may want to manually inline the interesting bits into the
- specific overloads above. There is some overhead associated with the extra arguments passed to
- the function, and various if-checks in the code. It is also more difficult to follow what the
- code does as-is because it has to handle the three flavors.
- </summary>
- <typeparam name="TLocal">The type of the local data.</typeparam>
- <param name="fromInclusive">The loop's start index, inclusive.</param>
- <param name="toExclusive">The loop's end index, exclusive.</param>
- <param name="parallelOptions">A ParallelOptions instance.</param>
- <param name="body">The simple loop body.</param>
- <param name="bodyWithState">The loop body for ParallelState overloads.</param>
- <param name="bodyWithLocal">The loop body for thread local state overloads.</param>
- <param name="localInit">A selector function that returns new thread local state.</param>
- <param name="localFinally">A cleanup function to destroy thread local state.</param>
- <remarks>Only one of the body arguments may be supplied (i.e. they are exclusive).</remarks>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult"/> structure.</returns>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForWorker64``1(System.Int64,System.Int64,System.Threading.Tasks.ParallelOptions,System.Action{System.Int64},System.Action{System.Int64,System.Threading.Tasks.ParallelLoopState},System.Func{System.Int64,System.Threading.Tasks.ParallelLoopState,``0,``0},System.Func{``0},System.Action{``0})">
- <summary>
- Performs the major work of the 64-bit parallel for loop. It assumes that argument validation has already
- been performed by the caller. This function's whole purpose in life is to enable as much reuse of
- common implementation details for the various For overloads we offer. Without it, we'd end up
- with lots of duplicate code. It handles: (1) simple for loops, (2) for loops that depend on
- ParallelState, and (3) for loops with thread local data.
-
- @TODO: at some point in the future, we may want to manually inline the interesting bits into the
- specific overloads above. There is some overhead associated with the extra arguments passed to
- the function, and various if-checks in the code. It is also more difficult to follow what the
- code does as-is because it has to handle the three flavors.
- </summary>
- <typeparam name="TLocal">The type of the local data.</typeparam>
- <param name="fromInclusive">The loop's start index, inclusive.</param>
- <param name="toExclusive">The loop's end index, exclusive.</param>
- <param name="parallelOptions">A ParallelOptions instance.</param>
- <param name="body">The simple loop body.</param>
- <param name="bodyWithState">The loop body for ParallelState overloads.</param>
- <param name="bodyWithLocal">The loop body for thread local state overloads.</param>
- <param name="localInit">A selector function that returns new thread local state.</param>
- <param name="localFinally">A cleanup function to destroy thread local state.</param>
- <remarks>Only one of the body arguments may be supplied (i.e. they are exclusive).</remarks>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult"/> structure.</returns>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the current element as a parameter.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the current element as a parameter.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the following parameters: the current element,
- and a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0,System.Threading.Tasks.ParallelLoopState})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the following parameters: the current element,
- and a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and the current element's index (an Int64).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and the current element's index (an Int64).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``2(System.Collections.Generic.IEnumerable{``0},System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Action{``1})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and some local state that may be shared amongst iterations
- that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``2(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Action{``1})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and some local state that may be shared amongst iterations
- that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``2(System.Collections.Generic.IEnumerable{``0},System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Action{``1})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, the current element's index (an Int64), and some local
- state that may be shared amongst iterations that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``2(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Action{``1})">
- <summary>
- Executes a for each operation on an <see cref="T:System.Collections.IEnumerable{TSource}"/>
- in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the data in the source.</typeparam>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- enumerable. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, the current element's index (an Int64), and some local
- state that may be shared amongst iterations that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEachWorker``2(System.Collections.Generic.IEnumerable{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState},System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Func{``1},System.Action{``1})">
- <summary>
- Performs the major work of the parallel foreach loop. It assumes that argument validation has
- already been performed by the caller. This function's whole purpose in life is to enable as much
- reuse of common implementation details for the various For overloads we offer. Without it, we'd
- end up with lots of duplicate code. It handles: (1) simple foreach loops, (2) foreach loops that
- depend on ParallelState, and (3) foreach loops that access indices, (4) foreach loops with thread
- local data, and any necessary permutations thereof.
-
- @TODO: at some point in the future, we may want to manually inline the interesting bits into the
- specific overloads above. There is some overhead associated with the extra arguments passed to
- the function, and various if-checks in the code. It is also more difficult to follow what the
- code does as-is because it has to handle the all flavors.
- </summary>
- <typeparam name="TSource">The type of the source data.</typeparam>
- <typeparam name="TLocal">The type of the local data.</typeparam>
- <param name="source">An enumerable data source.</param>
- <param name="parallelOptions">ParallelOptions instance to use with this ForEach-loop</param>
- <param name="body">The simple loop body.</param>
- <param name="bodyWithState">The loop body for ParallelState overloads.</param>
- <param name="bodyWithStateAndIndex">The loop body for ParallelState/indexed overloads.</param>
- <param name="bodyWithStateAndLocal">The loop body for ParallelState/thread local state overloads.</param>
- <param name="bodyWithEverything">The loop body for ParallelState/indexed/thread local state overloads.</param>
- <param name="localInit">A selector function that returns new thread local state.</param>
- <param name="localFinally">A cleanup function to destroy thread local state.</param>
- <remarks>Only one of the bodyXX arguments may be supplied (i.e. they are exclusive).</remarks>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult"/> structure.</returns>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEachWorker``2(``0[],System.Threading.Tasks.ParallelOptions,System.Action{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState},System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Func{``1},System.Action{``1})">
- <summary>
- A fast path for the more general ForEachWorker method above. This uses ldelem instructions to
- access the individual elements of the array, which will be faster.
- </summary>
- <typeparam name="TSource">The type of the source data.</typeparam>
- <typeparam name="TLocal">The type of the local data.</typeparam>
- <param name="array">An array data source.</param>
- <param name="parallelOptions">The options to use for execution.</param>
- <param name="body">The simple loop body.</param>
- <param name="bodyWithState">The loop body for ParallelState overloads.</param>
- <param name="bodyWithStateAndIndex">The loop body for indexed/ParallelLoopState overloads.</param>
- <param name="bodyWithStateAndLocal">The loop body for local/ParallelLoopState overloads.</param>
- <param name="bodyWithEverything">The loop body for the most generic overload.</param>
- <param name="localInit">A selector function that returns new thread local state.</param>
- <param name="localFinally">A cleanup function to destroy thread local state.</param>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult"/> structure.</returns>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEachWorker``2(System.Collections.Generic.IList{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState},System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Func{``1},System.Action{``1})">
- <summary>
- A fast path for the more general ForEachWorker method above. This uses IList<T>'s indexer
- capabilities to access the individual elements of the list rather than an enumerator.
- </summary>
- <typeparam name="TSource">The type of the source data.</typeparam>
- <typeparam name="TLocal">The type of the local data.</typeparam>
- <param name="list">A list data source.</param>
- <param name="parallelOptions">The options to use for execution.</param>
- <param name="body">The simple loop body.</param>
- <param name="bodyWithState">The loop body for ParallelState overloads.</param>
- <param name="bodyWithStateAndIndex">The loop body for indexed/ParallelLoopState overloads.</param>
- <param name="bodyWithStateAndLocal">The loop body for local/ParallelLoopState overloads.</param>
- <param name="bodyWithEverything">The loop body for the most generic overload.</param>
- <param name="localInit">A selector function that returns new thread local state.</param>
- <param name="localFinally">A cleanup function to destroy thread local state.</param>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult"/> structure.</returns>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Concurrent.Partitioner{``0},System.Action{``0})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">
- Partitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <param name="source">The Partitioner that contains the original data source.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> Partitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> Partitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner does not return
- the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner returns an IList
- with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() method in the <paramref name="source"/> Partitioner returns an
- IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the current element as a parameter.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Concurrent.Partitioner{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">
- Partitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <param name="source">The Partitioner that contains the original data source.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> Partitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> Partitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner does not return
- the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner returns an IList
- with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() method in the <paramref name="source"/> Partitioner returns an
- IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the following parameters: the current element,
- and a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Concurrent.OrderablePartitioner{``0},System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.OrderablePartitioner{TSource}">
- OrderablePartitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <param name="source">The OrderablePartitioner that contains the original data source.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> OrderablePartitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- KeysNormalized property in the <paramref name="source"/> OrderablePartitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> OrderablePartitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() or GetOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner do not return the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() or GetOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner return an IList with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() or GetDynamicOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner return an IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and the current element's index (an Int64).
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``2(System.Collections.Concurrent.Partitioner{``0},System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Action{``1})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">
- Partitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="source">The Partitioner that contains the original data source.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> Partitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> Partitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner does not return
- the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner returns an IList
- with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() method in the <paramref name="source"/> Partitioner returns an
- IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and some local state that may be shared amongst iterations
- that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``2(System.Collections.Concurrent.OrderablePartitioner{``0},System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Action{``1})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.OrderablePartitioner{TSource}">
- OrderablePartitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="source">The OrderablePartitioner that contains the original data source.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> OrderablePartitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- KeysNormalized property in the <paramref name="source"/> OrderablePartitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> OrderablePartitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() or GetOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner do not return the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() or GetOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner return an IList with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() or GetDynamicOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner return an IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, the current element's index (an Int64), and some local
- state that may be shared amongst iterations that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Concurrent.Partitioner{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">
- Partitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <param name="source">The Partitioner that contains the original data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> Partitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> Partitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner does not return
- the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner returns an IList
- with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() method in the <paramref name="source"/> Partitioner returns an
- IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the current element as a parameter.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Concurrent.Partitioner{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0,System.Threading.Tasks.ParallelLoopState})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">
- Partitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <param name="source">The Partitioner that contains the original data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> Partitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> Partitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner does not return
- the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner returns an IList
- with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() method in the <paramref name="source"/> Partitioner returns an
- IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the following parameters: the current element,
- and a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``1(System.Collections.Concurrent.OrderablePartitioner{``0},System.Threading.Tasks.ParallelOptions,System.Action{``0,System.Threading.Tasks.ParallelLoopState,System.Int64})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.OrderablePartitioner{TSource}">
- OrderablePartitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <param name="source">The OrderablePartitioner that contains the original data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> OrderablePartitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- KeysNormalized property in the <paramref name="source"/> OrderablePartitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> OrderablePartitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() or GetOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner do not return the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() or GetOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner return an IList with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() or GetDynamicOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner return an IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and the current element's index (an Int64).
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``2(System.Collections.Concurrent.Partitioner{``0},System.Threading.Tasks.ParallelOptions,System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,``1,``1},System.Action{``1})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">
- Partitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="source">The Partitioner that contains the original data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> Partitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> Partitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner does not return
- the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() method in the <paramref name="source"/> Partitioner returns an IList
- with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() method in the <paramref name="source"/> Partitioner returns an
- IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, and some local state that may be shared amongst iterations
- that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ForEach``2(System.Collections.Concurrent.OrderablePartitioner{``0},System.Threading.Tasks.ParallelOptions,System.Func{``1},System.Func{``0,System.Threading.Tasks.ParallelLoopState,System.Int64,``1,``1},System.Action{``1})">
- <summary>
- Executes a for each operation on a <see cref="T:System.Collections.Concurrent.OrderablePartitioner{TSource}">
- OrderablePartitioner</see> in which iterations may run in parallel.
- </summary>
- <typeparam name="TSource">The type of the elements in <paramref name="source"/>.</typeparam>
- <typeparam name="TLocal">The type of the thread-local data.</typeparam>
- <param name="source">The OrderablePartitioner that contains the original data source.</param>
- <param name="parallelOptions">A <see cref="T:System.Threading.Tasks.ParallelOptions">ParallelOptions</see>
- instance that configures the behavior of this operation.</param>
- <param name="localInit">The function delegate that returns the initial state of the local data
- for each thread.</param>
- <param name="body">The delegate that is invoked once per iteration.</param>
- <param name="localFinally">The delegate that performs a final action on the local state of each
- thread.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="source"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="parallelOptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="body"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localInit"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="localFinally"/> argument is null.</exception>
- <exception cref="T:System.OperationCanceledException">The exception that is thrown when the
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the <paramref name="parallelOptions"/>
- argument is set</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- SupportsDynamicPartitions property in the <paramref name="source"/> OrderablePartitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- KeysNormalized property in the <paramref name="source"/> OrderablePartitioner returns
- false.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when any
- methods in the <paramref name="source"/> OrderablePartitioner return null.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() or GetOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner do not return the correct number of partitions.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetPartitions() or GetOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner return an IList with at least one null value.</exception>
- <exception cref="T:System.InvalidOperationException">The exception that is thrown when the
- GetDynamicPartitions() or GetDynamicOrderablePartitions() methods in the <paramref name="source"/>
- OrderablePartitioner return an IEnumerable whose GetEnumerator() method returns null.</exception>
- <exception cref="T:System.AggregateException">The exception that is thrown to contain an exception
- thrown from one of the specified delegates.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when the
- the <see cref="T:System.Threading.CancellationTokenSource">CancellationTokenSource</see> associated with the
- the <see cref="T:System.Threading.CancellationToken">CancellationToken</see> in the
- <paramref name="parallelOptions"/> has been disposed.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.ParallelLoopResult">ParallelLoopResult</see> structure
- that contains information on what portion of the loop completed.</returns>
- <remarks>
- <para>
- The <see cref="T:System.Collections.Concurrent.Partitioner{TSource}">Partitioner</see> is used to retrieve
- the elements to be processed, in place of the original data source. If the current element's
- index is desired, the source must be an <see cref="T:System.Collections.Concurrent.OrderablePartitioner">
- OrderablePartitioner</see>.
- </para>
- <para>
- The <paramref name="body"/> delegate is invoked once for each element in the <paramref name="source"/>
- Partitioner. It is provided with the following parameters: the current element,
- a <see cref="T:System.Threading.Tasks.ParallelLoopState">ParallelLoopState</see> instance that may be
- used to break out of the loop prematurely, the current element's index (an Int64), and some local
- state that may be shared amongst iterations that execute on the same thread.
- </para>
- <para>
- The <paramref name="localInit"/> delegate is invoked once for each thread that participates in the loop's
- execution and returns the initial local state for each of those threads. These initial states are passed to the first
- <paramref name="body"/> invocations on each thread. Then, every subsequent body invocation returns a possibly
- modified state value that is passed to the next body invocation. Finally, the last body invocation on each thread returns a state value
- that is passed to the <paramref name="localFinally"/> delegate. The localFinally delegate is invoked once per thread to perform a final
- action on each thread's local state.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Parallel.ThrowIfReducableToSingleOCE(System.Collections.Generic.IEnumerable{System.Exception},System.Threading.CancellationToken)">
- <summary>
- Internal utility function that implements the OCE filtering behavior for all Parallel.* APIs.
- Throws a single OperationCancelledException object with the token if the Exception collection only contains
- OperationCancelledExceptions with the given CancellationToken.
-
- </summary>
- <param name="excCollection"> The exception collection to filter</param>
- <param name="ct"> The CancellationToken expected on all inner exceptions</param>
- <returns></returns>
- </member>
- <member name="T:System.Threading.Tasks.ParallelLoopState">
- <summary>
- Enables iterations of <see cref="T:System.Threading.Tasks.Parallel"/> loops to interact with
- other iterations.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.ParallelLoopState.Stop">
- <summary>
- Communicates that the <see cref="T:System.Threading.Tasks.Parallel"/> loop should cease execution at the system's earliest
- convenience.
- </summary>
- <exception cref="T:System.InvalidOperationException">
- The <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> method was previously called. <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> and <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop"/> may not be used in combination by iterations of the same loop.
- </exception>
- <remarks>
- <para>
- <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop"/> may be used to communicate to the loop that no other iterations need be run.
- For long-running iterations that may already be executing, <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop"/> causes <see cref="P:System.Threading.Tasks.ParallelLoopState.IsStopped"/>
- to return true for all other iterations of the loop, such that another iteration may check <see cref="P:System.Threading.Tasks.ParallelLoopState.IsStopped"/> and exit early if it's observed to be true.
- </para>
- <para>
- <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop"/> is typically employed in search-based algorithms, where once a result is found,
- no other iterations need be executed.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.ParallelLoopState.Break">
- <summary>
- Communicates that the <see cref="T:System.Threading.Tasks.Parallel"/> loop should cease execution at the system's earliest
- convenience of iterations beyond the current iteration.
- </summary>
- <exception cref="T:System.InvalidOperationException">
- The <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop"/> method was previously called. <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> and <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop"/>
- may not be used in combination by iterations of the same loop.
- </exception>
- <remarks>
- <para>
- <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> may be used to communicate to the loop that no other iterations after the
- current iteration need be run. For example, if <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> is called from the 100th
- iteration of a for loop iterating in parallel from 0 to 1000, all iterations less than 100 should
- still be run, but the iterations from 101 through to 1000 are not necessary.
- </para>
- <para>
- For long-running iterations that may already be executing, <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> causes <see cref="P:System.Threading.Tasks.ParallelLoopState.LowestBreakIteration"/>
- to be set to the current iteration's index if the current index is less than the current value of
- <see cref="P:System.Threading.Tasks.ParallelLoopState.LowestBreakIteration"/>.
- </para>
- <para>
- <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> is typically employed in search-based algorithms where an ordering is
- present in the data source.
- </para>
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState.InternalShouldExitCurrentIteration">
- <summary>
- Internal/virtual support for ShouldExitCurrentIteration.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState.ShouldExitCurrentIteration">
- <summary>
- Gets whether the current iteration of the loop should exit based
- on requests made by this or other iterations.
- </summary>
- <remarks>
- When an iteration of a loop calls <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> or <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop"/>, or
- when one throws an exception, or when the loop is canceled, the <see cref="T:System.Threading.Tasks.Parallel"/> class will proactively
- attempt to prohibit additional iterations of the loop from starting execution.
- However, there may be cases where it is unable to prevent additional iterations from starting.
- It may also be the case that a long-running iteration has already begun execution. In such
- cases, iterations may explicitly check the <see cref="P:System.Threading.Tasks.ParallelLoopState.ShouldExitCurrentIteration"/> property and
- cease execution if the property returns true.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState.IsStopped">
- <summary>
- Gets whether any iteration of the loop has called <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop"/>.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState.IsExceptional">
- <summary>
- Gets whether any iteration of the loop has thrown an exception that went unhandled by that
- iteration.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState.InternalLowestBreakIteration">
- <summary>
- Internal/virtual support for LowestBreakIteration.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState.LowestBreakIteration">
- <summary>
- Gets the lowest iteration of the loop from which <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> was called.
- </summary>
- <remarks>
- If no iteration of the loop called <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/>, this property will return null.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.ParallelLoopState32.#ctor(System.Threading.Tasks.ParallelLoopStateFlags32)">
- <summary>
- Internal constructor to ensure an instance isn't created by users.
- </summary>
- <param name="sharedParallelStateFlags">A flag shared among all threads participating
- in the execution of a certain loop.</param>
- </member>
- <member name="M:System.Threading.Tasks.ParallelLoopState32.InternalBreak">
- <summary>
- Communicates that parallel tasks should stop when they reach a specified iteration element.
- (which is CurrentIteration of the caller).
- </summary>
- <exception cref="T:System.InvalidOperationException">Break() called after Stop().</exception>
- <remarks>
- This is shared with all other concurrent threads in the system which are participating in the
- loop's execution. After calling Break(), no additional iterations will be executed on
- the current thread, and other worker threads will execute once they get beyond the calling iteration.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState32.CurrentIteration">
- <summary>
- Tracks the current loop iteration for the owning task.
- This is used to compute whether or not the task should
- terminate early due to a Break() call.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState32.InternalShouldExitCurrentIteration">
- <summary>
- Returns true if we should be exiting from the current iteration
- due to Stop(), Break() or exception.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState32.InternalLowestBreakIteration">
- <summary>
- Returns the lowest iteration at which Break() has been called, or
- null if Break() has not yet been called.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.ParallelLoopState64">
- <summary>
- Allows independent iterations of a parallel loop to interact with other iterations.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.ParallelLoopState64.#ctor(System.Threading.Tasks.ParallelLoopStateFlags64)">
- <summary>
- Internal constructor to ensure an instance isn't created by users.
- </summary>
- <param name="sharedParallelStateFlags">A flag shared among all threads participating
- in the execution of a certain loop.</param>
- </member>
- <member name="M:System.Threading.Tasks.ParallelLoopState64.InternalBreak">
- <summary>
- Communicates that parallel tasks should stop when they reach a specified iteration element.
- (which is CurrentIteration of the caller).
- </summary>
- <exception cref="T:System.InvalidOperationException">Break() called after Stop().</exception>
- <remarks>
- Atomically sets shared StoppedBroken flag to BROKEN, then atomically sets shared
- LowestBreakIteration to CurrentIteration, but only if CurrentIteration is less than
- LowestBreakIteration.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState64.CurrentIteration">
- <summary>
- Tracks the current loop iteration for the owning task.
- This is used to compute whether or not the task should
- terminate early due to a Break() call.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState64.InternalShouldExitCurrentIteration">
- <summary>
- Returns true if we should be exiting from the current iteration
- due to Stop(), Break() or exception.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopState64.InternalLowestBreakIteration">
- <summary>
- Returns the lowest iteration at which Break() has been called, or
- null if Break() has not yet been called.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.ParallelLoopStateFlags">
- <summary>
- State information that is common between ParallelStateFlags class
- and ParallelStateFlags64 class.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.ParallelLoopStateFlags32">
- <summary>
- An internal class used to share accounting information in 32-bit versions
- of For()/ForEach() loops.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.ParallelLoopStateFlags32.ShouldExitLoop(System.Int32)">
- <summary>
- Lets the caller know whether or not to prematurely exit the For/ForEach loop.
- If this returns true, then exit the loop. Otherwise, keep going.
- </summary>
- <param name="CallerIteration">The caller's current iteration point
- in the loop.</param>
- <remarks>
- The loop should exit on any one of the following conditions:
- (1) Stop() has been called by one or more tasks.
- (2) An exception has been raised by one or more tasks.
- (3) Break() has been called by one or more tasks, and
- CallerIteration exceeds the (lowest) iteration at which
- Break() was called.
- (4) The loop was canceled.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.ParallelLoopStateFlags64">
- <summary>
- An internal class used to share accounting information in 64-bit versions
- of For()/ForEach() loops.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.ParallelLoopStateFlags64.ShouldExitLoop(System.Int64)">
- <summary>
- Lets the caller know whether or not to prematurely exit the For/ForEach loop.
- If this returns true, then exit the loop. Otherwise, keep going.
- </summary>
- <param name="CallerIteration">The caller's current iteration point
- in the loop.</param>
- <remarks>
- The loop should exit on any one of the following conditions:
- (1) Stop() has been called by one or more tasks.
- (2) An exception has been raised by one or more tasks.
- (3) Break() has been called by one or more tasks, and
- CallerIteration exceeds the (lowest) iteration at which
- Break() was called.
- (4) The loop has been canceled.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.ParallelLoopResult">
- <summary>
- Provides completion status on the execution of a <see cref="T:System.Threading.Tasks.Parallel"/> loop.
- </summary>
- <remarks>
- If <see cref="P:System.Threading.Tasks.ParallelLoopResult.IsCompleted"/> returns true, then the loop ran to completion, such that all iterations
- of the loop were executed. If <see cref="P:System.Threading.Tasks.ParallelLoopResult.IsCompleted"/> returns false and <see cref="P:System.Threading.Tasks.ParallelLoopResult.LowestBreakIteration"/> returns null, a call to <see cref="M:System.Threading.Tasks.ParallelLoopState.Stop"/> was used to end the loop prematurely. If <see cref="P:System.Threading.Tasks.ParallelLoopResult.IsCompleted"/> returns false and <see cref="P:System.Threading.Tasks.ParallelLoopResult.LowestBreakIteration"/> returns a non-null integral
- value, <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> was used to end the loop prematurely.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopResult.IsCompleted">
- <summary>
- Gets whether the loop ran to completion, such that all iterations of the loop were executed
- and the loop didn't receive a request to end prematurely.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ParallelLoopResult.LowestBreakIteration">
- <summary>
- Gets the index of the lowest iteration from which <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/>
- was called.
- </summary>
- <remarks>
- If <see cref="M:System.Threading.Tasks.ParallelLoopState.Break"/> was not employed, this property will
- return null.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.Shared`1">
- <summary>
- Utility class for allocating structs as heap variables
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.IndexRange">
- <summary>
- Represents an index range
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.RangeWorker">
- <summary>
- The RangeWorker struct wraps the state needed by a task that services the parallel loop
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.RangeWorker.#ctor(System.Threading.Tasks.IndexRange[],System.Int32,System.Int64)">
- <summary>
- Initializes a RangeWorker struct
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.RangeWorker.FindNewWork(System.Int64@,System.Int64@)">
- <summary>
- Implements the core work search algorithm that will be used for this range worker.
- </summary>
-
- Usage pattern is:
- 1) the thread associated with this rangeworker calls FindNewWork
- 2) if we return true, the worker uses the nFromInclusiveLocal and nToExclusiveLocal values
- to execute the sequential loop
- 3) if we return false it means there is no more work left. It's time to quit.
-
- </member>
- <member name="M:System.Threading.Tasks.RangeWorker.FindNewWork32(System.Int32@,System.Int32@)">
- <summary>
- 32 bit integer version of FindNewWork. Assumes the ranges were initialized with 32 bit values.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.RangeManager">
- <summary>
- Represents the entire loop operation, keeping track of workers and ranges.
- </summary>
-
- The usage pattern is:
- 1) The Parallel loop entry function (ForWorker) creates an instance of this class
- 2) Every thread joining to service the parallel loop calls RegisterWorker to grab a
- RangeWorker struct to wrap the state it will need to find and execute work,
- and they keep interacting with that struct until the end of the loop
- </member>
- <member name="M:System.Threading.Tasks.RangeManager.#ctor(System.Int64,System.Int64,System.Int64,System.Int32)">
- <summary>
- Initializes a RangeManager with the given loop parameters, and the desired number of outer ranges
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.RangeManager.RegisterNewWorker">
- <summary>
- The function that needs to be called by each new worker thread servicing the parallel loop
- in order to get a RangeWorker struct that wraps the state for finding and executing indices
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.Task`1">
- <summary>
- Represents an asynchronous operation that produces a result at some time in the future.
- </summary>
- <typeparam name="TResult">
- The type of the result produced by this <see cref="T:System.Threading.Tasks.Task`1"/>.
- </typeparam>
- <remarks>
- <para>
- <see cref="T:System.Threading.Tasks.Task`1"/> instances may be created in a variety of ways. The most common approach is by
- using the task's <see cref="P:System.Threading.Tasks.Task`1.Factory"/> property to retrieve a <see cref="T:System.Threading.Tasks.TaskFactory`1"/> instance that can be used to create tasks for several
- purposes. For example, to create a <see cref="T:System.Threading.Tasks.Task`1"/> that runs a function, the factory's StartNew
- method may be used:
- <code>
- // C#
- var t = Task<int>.Factory.StartNew(() => GenerateResult());
- - or -
- var t = Task.Factory.StartNew(() => GenerateResult());
-
- ' Visual Basic
- Dim t = Task<int>.Factory.StartNew(Function() GenerateResult())
- - or -
- Dim t = Task.Factory.StartNew(Function() GenerateResult())
- </code>
- </para>
- <para>
- The <see cref="T:System.Threading.Tasks.Task`1"/> class also provides constructors that initialize the task but that do not
- schedule it for execution. For performance reasons, the StartNew method should be the
- preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation
- and scheduling must be separated, the constructors may be used, and the task's
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see>
- method may then be used to schedule the task for execution at a later time.
- </para>
- <para>
- All members of <see cref="T:System.Threading.Tasks.Task`1"/>, except for
- <see cref="M:System.Threading.Tasks.Task.Dispose">Dispose</see>, are thread-safe
- and may be used from multiple threads concurrently.
- </para>
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.Task">
- <summary>
- Represents an asynchronous operation.
- </summary>
- <remarks>
- <para>
- <see cref="T:System.Threading.Tasks.Task"/> instances may be created in a variety of ways. The most common approach is by
- using the Task type's <see cref="P:System.Threading.Tasks.Task.Factory"/> property to retrieve a <see cref="T:System.Threading.Tasks.TaskFactory"/> instance that can be used to create tasks for several
- purposes. For example, to create a <see cref="T:System.Threading.Tasks.Task"/> that runs an action, the factory's StartNew
- method may be used:
- <code>
- // C#
- var t = Task.Factory.StartNew(() => DoAction());
-
- ' Visual Basic
- Dim t = Task.Factory.StartNew(Function() DoAction())
- </code>
- </para>
- <para>
- The <see cref="T:System.Threading.Tasks.Task"/> class also provides constructors that initialize the Task but that do not
- schedule it for execution. For performance reasons, TaskFactory's StartNew method should be the
- preferred mechanism for creating and scheduling computational tasks, but for scenarios where creation
- and scheduling must be separated, the constructors may be used, and the task's <see cref="M:System.Threading.Tasks.Task.Start"/>
- method may then be used to schedule the task for execution at a later time.
- </para>
- <para>
- All members of <see cref="T:System.Threading.Tasks.Task"/>, except for <see cref="M:System.Threading.Tasks.Task.Dispose"/>, are thread-safe
- and may be used from multiple threads concurrently.
- </para>
- <para>
- For operations that return values, the <see cref="T:System.Threading.Tasks.Task`1"/> class
- should be used.
- </para>
- <para>
- For developers implementing custom debuggers, several internal and private members of Task may be
- useful (these may change from release to release). The Int32 m_taskId field serves as the backing
- store for the <see cref="P:System.Threading.Tasks.Task.Id"/> property, however accessing this field directly from a debugger may be
- more efficient than accessing the same value through the property's getter method (the
- s_taskIdCounter Int32 counter is used to retrieve the next available ID for a Task). Similarly, the
- Int32 m_stateFlags field stores information about the current lifecycle stage of the Task,
- information also accessible through the <see cref="P:System.Threading.Tasks.Task.Status"/> property. The m_action System.Object
- field stores a reference to the Task's delegate, and the m_stateObject System.Object field stores the
- async state passed to the Task by the developer. Finally, for debuggers that parse stack frames, the
- InternalWait method serves a potential marker for when a Task is entering a wait operation.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Task.#cctor">
- <summary>
- A type initializer that runs with the appropriate permissions.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.#ctor(System.Action)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task"/> with the specified action.
- </summary>
- <param name="action">The delegate that represents the code to execute in the Task.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="action"/> argument is null.</exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.#ctor(System.Action,System.Threading.CancellationToken)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task"/> with the specified action and <see cref="T:System.Threading.CancellationToken">CancellationToken</see>.
- </summary>
- <param name="action">The delegate that represents the code to execute in the Task.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new Task.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="action"/> argument is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.#ctor(System.Action,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task"/> with the specified action and creation options.
- </summary>
- <param name="action">The delegate that represents the code to execute in the task.</param>
- <param name="creationOptions">
- The <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions</see> used to
- customize the Task's behavior.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="action"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskCreationOptions"/>.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.#ctor(System.Action,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task"/> with the specified action and creation options.
- </summary>
- <param name="action">The delegate that represents the code to execute in the task.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> that will be assigned to the new task.</param>
- <param name="creationOptions">
- The <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions</see> used to
- customize the Task's behavior.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="action"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskCreationOptions"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.#ctor(System.Action{System.Object},System.Object)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task"/> with the specified action and state.
- </summary>
- <param name="action">The delegate that represents the code to execute in the task.</param>
- <param name="state">An object representing data to be used by the action.</param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="action"/> argument is null.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.#ctor(System.Action{System.Object},System.Object,System.Threading.CancellationToken)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task"/> with the specified action, state, snd options.
- </summary>
- <param name="action">The delegate that represents the code to execute in the task.</param>
- <param name="state">An object representing data to be used by the action.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> that will be assigned to the new task.</param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="action"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.#ctor(System.Action{System.Object},System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task"/> with the specified action, state, snd options.
- </summary>
- <param name="action">The delegate that represents the code to execute in the task.</param>
- <param name="state">An object representing data to be used by the action.</param>
- <param name="creationOptions">
- The <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions</see> used to
- customize the Task's behavior.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="action"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskCreationOptions"/>.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.#ctor(System.Action{System.Object},System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task"/> with the specified action, state, snd options.
- </summary>
- <param name="action">The delegate that represents the code to execute in the task.</param>
- <param name="state">An object representing data to be used by the action.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> that will be assigned to the new task.</param>
- <param name="creationOptions">
- The <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions</see> used to
- customize the Task's behavior.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="action"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskCreationOptions"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.#ctor(System.Object,System.Object,System.Threading.Tasks.Task,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.InternalTaskOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- An internal constructor used by the factory methods on task and its descendent(s).
- This variant does not capture the ExecutionContext; it is up to the caller to do that.
- </summary>
- <param name="action">An action to execute.</param>
- <param name="state">Optional state to pass to the action.</param>
- <param name="parent">Parent of Task.</param>
- <param name="cancellationToken">A CancellationToken for the task.</param>
- <param name="scheduler">A task scheduler under which the task will run.</param>
- <param name="creationOptions">Options to control its execution.</param>
- <param name="internalOptions">Internal options to control its execution</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.TaskConstructorCore(System.Object,System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.InternalTaskOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Common logic used by the following internal ctors:
- Task()
- Task(object action, object state, Task parent, TaskCreationOptions options, TaskScheduler taskScheduler)
-
- ASSUMES THAT m_creatingTask IS ALREADY SET.
-
- </summary>
- <param name="action">Action for task to execute.</param>
- <param name="state">Object to which to pass to action (may be null)</param>
- <param name="scheduler">Task scheduler on which to run thread (only used by continuation tasks).</param>
- <param name="cancellationToken">A CancellationToken for the Task.</param>
- <param name="creationOptions">Options to customize behavior of Task.</param>
- <param name="internalOptions">Internal options to customize behavior of Task.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.DeregisterCancellationCallback">
- <summary>
- Checks if we registered a CT callback during construction, and deregisters it.
- This should be called when we know the registration isn't useful anymore. Specifically from Finish() if the task has completed
- successfully or with an exception.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.PossiblyCaptureContext(System.Threading.StackCrawlMark2@)">
- <summary>
- Captures the ExecutionContext so long as flow isn't suppressed.
- </summary>
- <param name="stackMark">A stack crawl mark pointing to the frame of the caller.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.AddNewChild">
- <summary>
- Internal function that will be called by a new child task to add itself to
- the children list of the parent (this).
-
- Since a child task can only be created from the thread executing the action delegate
- of this task, reentrancy is neither required nor supported. This should not be called from
- anywhere other than the task construction/initialization codepaths.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.Start">
- <summary>
- Starts the <see cref="T:System.Threading.Tasks.Task"/>, scheduling it for execution to the current <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>.
- </summary>
- <remarks>
- A task may only be started and run only once. Any attempts to schedule a task a second time
- will result in an exception.
- </remarks>
- <exception cref="T:System.InvalidOperationException">
- The <see cref="T:System.Threading.Tasks.Task"/> is not in a valid state to be started. It may have already been started,
- executed, or canceled, or it may have been created in a manner that doesn't support direct
- scheduling.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> instance has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.Start(System.Threading.Tasks.TaskScheduler)">
- <summary>
- Starts the <see cref="T:System.Threading.Tasks.Task"/>, scheduling it for execution to the specified <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>.
- </summary>
- <remarks>
- A task may only be started and run only once. Any attempts to schedule a task a second time will
- result in an exception.
- </remarks>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> with which to associate
- and execute this task.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="scheduler"/> argument is null.
- </exception>
- <exception cref="T:System.InvalidOperationException">
- The <see cref="T:System.Threading.Tasks.Task"/> is not in a valid state to be started. It may have already been started,
- executed, or canceled, or it may have been created in a manner that doesn't support direct
- scheduling.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> instance has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.RunSynchronously">
- <summary>
- Runs the <see cref="T:System.Threading.Tasks.Task"/> synchronously on the current <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>.
- </summary>
- <remarks>
- <para>
- A task may only be started and run only once. Any attempts to schedule a task a second time will
- result in an exception.
- </para>
- <para>
- Tasks executed with <see cref="M:System.Threading.Tasks.Task.RunSynchronously"/> will be associated with the current <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>.
- </para>
- <para>
- If the target scheduler does not support running this Task on the current thread, the Task will
- be scheduled for execution on the scheduler, and the current thread will block until the
- Task has completed execution.
- </para>
- </remarks>
- <exception cref="T:System.InvalidOperationException">
- The <see cref="T:System.Threading.Tasks.Task"/> is not in a valid state to be started. It may have already been started,
- executed, or canceled, or it may have been created in a manner that doesn't support direct
- scheduling.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> instance has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.RunSynchronously(System.Threading.Tasks.TaskScheduler)">
- <summary>
- Runs the <see cref="T:System.Threading.Tasks.Task"/> synchronously on the <see cref="T:System.Threading.Tasks.TaskScheduler">scheduler</see> provided.
- </summary>
- <remarks>
- <para>
- A task may only be started and run only once. Any attempts to schedule a task a second time will
- result in an exception.
- </para>
- <para>
- If the target scheduler does not support running this Task on the current thread, the Task will
- be scheduled for execution on the scheduler, and the current thread will block until the
- Task has completed execution.
- </para>
- </remarks>
- <exception cref="T:System.InvalidOperationException">
- The <see cref="T:System.Threading.Tasks.Task"/> is not in a valid state to be started. It may have already been started,
- executed, or canceled, or it may have been created in a manner that doesn't support direct
- scheduling.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> instance has been disposed.
- </exception>
- <exception cref="T:System.ArgumentNullException">The <paramref name="scheduler"/> parameter
- is null.</exception>
- <param name="scheduler">The scheduler on which to attempt to run this task inline.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.ThrowIfDisposed">
- <summary>
- Throws an exception if the task has been disposed, and hence can no longer be accessed.
- </summary>
- <exception cref="T:System.ObjectDisposedException">The task has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.SetCompleted">
- <summary>
- Sets the internal completion event.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.Dispose">
- <summary>
- Disposes the <see cref="T:System.Threading.Tasks.Task"/>, releasing all of its unmanaged resources.
- </summary>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.Tasks.Task"/>, this method is not thread-safe.
- Also, <see cref="M:System.Threading.Tasks.Task.Dispose"/> may only be called on a <see cref="T:System.Threading.Tasks.Task"/> that is in one of
- the final states: <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </remarks>
- <exception cref="T:System.InvalidOperationException">
- The exception that is thrown if the <see cref="T:System.Threading.Tasks.Task"/> is not in
- one of the final states: <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.Dispose(System.Boolean)">
- <summary>
- Disposes the <see cref="T:System.Threading.Tasks.Task"/>, releasing all of its unmanaged resources.
- </summary>
- <param name="disposing">
- A Boolean value that indicates whether this method is being called due to a call to <see cref="M:System.Threading.Tasks.Task.Dispose"/>.
- </param>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.Tasks.Task"/>, this method is not thread-safe.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.Task.ScheduleAndStart(System.Boolean)">
- <summary>
- Schedules the task for execution.
- </summary>
- <param name="needsProtection">If true, TASK_STATE_STARTED bit is turned on in
- an atomic fashion, making sure that TASK_STATE_CANCELED does not get set
- underneath us. If false, TASK_STATE_STARTED bit is OR-ed right in. This
- allows us to streamline things a bit for StartNew(), where competing cancellations
- are not a problem.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.AddException(System.Object)">
- <summary>
- Adds an exception to the list of exceptions this task has thrown.
- </summary>
- <param name="exceptionObject">An object representing either an Exception or a collection of Exceptions.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.GetExceptions(System.Boolean)">
- <summary>
- Returns a list of exceptions by aggregating the holder's contents. Or null if
- no exceptions have been thrown.
- </summary>
- <param name="includeTaskCanceledExceptions">Whether to include a TCE if cancelled.</param>
- <returns>An aggregate exception, or null if no exceptions have been caught.</returns>
- </member>
- <member name="M:System.Threading.Tasks.Task.ThrowIfExceptional(System.Boolean)">
- <summary>
- Throws an aggregate exception if the task contains exceptions.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.UpdateExceptionObservedStatus">
- <summary>
- Checks whether this is an attached task, and whether we are being called by the parent task.
- And sets the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag based on that.
-
- This is meant to be used internally when throwing an exception, and when WaitAll is gathering
- exceptions for tasks it waited on. If this flag gets set, the implicit wait on children
- will skip exceptions to prevent duplication.
-
- This should only be called when this task has completed with an exception
-
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.Finish(System.Boolean)">
- <summary>
- Signals completion of this particular task.
-
- The bUserDelegateExecuted parameter indicates whether this Finish() call comes following the
- full execution of the user delegate.
-
- If bUserDelegateExecuted is false, it mean user delegate wasn't invoked at all (either due to
- a cancellation request, or because this task is a promise style Task). In this case, the steps
- involving child tasks (i.e. WaitForChildren) will be skipped.
-
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.FinishStageTwo">
- <summary>
- FinishStageTwo is to be executed as soon as we known there are no more children to complete.
- It can happen i) either on the thread that originally executed this task (if no children were spawned, or they all completed by the time this task's delegate quit)
- ii) or on the thread that executed the last child.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.FinishStageThree">
- <summary>
- Final stage of the task completion code path. Notifies the parent (if any) that another of its childre are done, and runs continuations.
- This function is only separated out from FinishStageTwo because these two operations are also needed to be called from CancellationCleanupLogic()
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.ProcessChildCompletion(System.Threading.Tasks.Task)">
- <summary>
- This is called by children of this task when they are completed.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.AddExceptionsFromChildren">
- <summary>
- This is to be called just before the task does its final state transition.
- It traverses the list of exceptional children, and appends their aggregate exceptions into this one's exception list
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.FinishThreadAbortedTask(System.Boolean,System.Boolean)">
- <summary>
- Special purpose Finish() entry point to be used when the task delegate throws a ThreadAbortedException
- This makes a note in the state flags so that we avoid any costly synchronous operations in the finish codepath
- such as inlined continuations
- </summary>
- <param name="bTAEAddedToExceptionHolder">
- Indicates whether the ThreadAbortException was added to this task's exception holder.
- This should always be true except for the case of non-root self replicating task copies.
- </param>
- <param name="delegateRan">Whether the delegate was executed.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.Execute">
- <summary>
- Executes the task. This method will only be called once, and handles bookeeping associated with
- self-replicating tasks, in addition to performing necessary exception marshaling.
- </summary>
- <exception cref="T:System.ObjectDisposedException">The task has already been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.System#Threading#Tasks#IThreadPoolWorkItem#ExecuteWorkItem">
- <summary>
- IThreadPoolWorkItem override, which is the entry function for this task when the TP scheduler decides to run it.
-
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.System#Threading#Tasks#IThreadPoolWorkItem#MarkAborted(System.Threading.ThreadAbortException)">
- <summary>
- The ThreadPool calls this if a ThreadAbortException is thrown while trying to execute this workitem. This may occur
- before Task would otherwise be able to observe it.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.ExecuteEntry(System.Boolean)">
- <summary>
- Outermost entry function to execute this task. Handles all aspects of executing a task on the caller thread.
- Currently this is called by IThreadPoolWorkItem.ExecuteWorkItem(), and TaskManager.TryExecuteInline.
-
- </summary>
- <param name="bPreventDoubleExecution"> Performs atomic updates to prevent double execution. Should only be set to true
- in codepaths servicing user provided TaskSchedulers. The ConcRT or ThreadPool schedulers don't need this. </param>
- </member>
- <member name="M:System.Threading.Tasks.Task.InnerInvoke">
- <summary>
- The actual code which invokes the body of the task. This can be overriden in derived types.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.InnerInvokeWithArg(System.Threading.Tasks.Task)">
- <summary>
- Alternate InnerInvoke prototype to be called from ExecuteSelfReplicating() so that
- the Parallel Debugger can discover the actual task being invoked.
- Details: Here, InnerInvoke is actually being called on the rootTask object while we are actually executing the
- childTask. And the debugger needs to discover the childTask, so we pass that down as an argument.
- The NoOptimization and NoInlining flags ensure that the childTask pointer is retained, and that this
- function appears on the callstack.
- </summary>
- <param name="childTask"></param>
- </member>
- <member name="M:System.Threading.Tasks.Task.HandleException(System.Exception)">
- <summary>
- Performs whatever handling is necessary for an unhandled exception. Normally
- this just entails adding the exception to the holder object.
- </summary>
- <param name="unhandledException">The exception that went unhandled.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.Wait">
- <summary>
- Waits for the <see cref="T:System.Threading.Tasks.Task"/> to complete execution.
- </summary>
- <exception cref="T:System.AggregateException">
- The <see cref="T:System.Threading.Tasks.Task"/> was canceled -or- an exception was thrown during
- the execution of the <see cref="T:System.Threading.Tasks.Task"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.Wait(System.TimeSpan)">
- <summary>
- Waits for the <see cref="T:System.Threading.Tasks.Task"/> to complete execution.
- </summary>
- <param name="timeout">
- A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <returns>
- true if the <see cref="T:System.Threading.Tasks.Task"/> completed execution within the allotted time; otherwise, false.
- </returns>
- <exception cref="T:System.AggregateException">
- The <see cref="T:System.Threading.Tasks.Task"/> was canceled -or- an exception was thrown during the execution of the <see cref="T:System.Threading.Tasks.Task"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="timeout"/> is a negative number other than -1 milliseconds, which represents an
- infinite time-out -or- timeout is greater than
- <see cref="F:System.Int32.MaxValue"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.Wait(System.Threading.CancellationToken)">
- <summary>
- Waits for the <see cref="T:System.Threading.Tasks.Task"/> to complete execution.
- </summary>
- <param name="cancellationToken">
- A <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> to observe while waiting for the task to complete.
- </param>
- <exception cref="T:System.OperationCanceledException">
- The <paramref name="cancellationToken"/> was canceled.
- </exception>
- <exception cref="T:System.AggregateException">
- The <see cref="T:System.Threading.Tasks.Task"/> was canceled -or- an exception was thrown during the execution of the <see cref="T:System.Threading.Tasks.Task"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/>
- has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.Wait(System.Int32)">
- <summary>
- Waits for the <see cref="T:System.Threading.Tasks.Task"/> to complete execution.
- </summary>
- <param name="millisecondsTimeout">
- The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to
- wait indefinitely.</param>
- <returns>true if the <see cref="T:System.Threading.Tasks.Task"/> completed execution within the allotted time; otherwise,
- false.
- </returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="millisecondsTimeout"/> is a negative number other than -1, which represents an
- infinite time-out.
- </exception>
- <exception cref="T:System.AggregateException">
- The <see cref="T:System.Threading.Tasks.Task"/> was canceled -or- an exception was thrown during the execution of the <see cref="T:System.Threading.Tasks.Task"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/>
- has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.Wait(System.Int32,System.Threading.CancellationToken)">
- <summary>
- Waits for the <see cref="T:System.Threading.Tasks.Task"/> to complete execution.
- </summary>
- <param name="millisecondsTimeout">
- The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to
- wait indefinitely.
- </param>
- <param name="cancellationToken">
- A <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> to observe while waiting for the task to complete.
- </param>
- <returns>
- true if the <see cref="T:System.Threading.Tasks.Task"/> completed execution within the allotted time; otherwise, false.
- </returns>
- <exception cref="T:System.AggregateException">
- The <see cref="T:System.Threading.Tasks.Task"/> was canceled -or- an exception was thrown during the execution of the <see cref="T:System.Threading.Tasks.Task"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/>
- has been disposed.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="millisecondsTimeout"/> is a negative number other than -1, which represents an
- infinite time-out.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The <paramref name="cancellationToken"/> was canceled.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.InternalWait(System.Int32,System.Threading.CancellationToken)">
- <summary>
- The core wait function, which is only accesible internally. It's meant to be used in places in TPL code where
- the current context is known or cached.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.InternalCancel(System.Boolean)">
- <summary>
- Cancels the <see cref="T:System.Threading.Tasks.Task"/>.
- </summary>
- <param name="bCancelNonExecutingOnly"> Indiactes whether we should only cancel non-invoked tasks.
- For the default scheduler this option will only be serviced through TryDequeue.
- For custom schedulers we also attempt an atomic state transition.</param>
- <returns>true if the task was successfully canceled; otherwise, false.</returns>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Threading.Tasks.Task"/>
- has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.SetCancellationAcknowledged">
- <summary>
- Sets the task's cancellation acknowledged flag.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.FinishContinuations">
- <summary>
- Runs all of the continuations, as appropriate.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWithIsRightKind(System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Helper function to determine whether the current task is in the state desired by the
- continuation kind under evaluation. Three possibilities exist: the task failed with
- an unhandled exception (OnFailed), the task was canceled before running (OnAborted),
- or the task completed successfully (OnCompletedSuccessfully). Note that the last
- one includes completing due to cancellation.
- </summary>
- <param name="options">The continuation options under evaluation.</param>
- <returns>True if the continuation should be run given the task's current state.</returns>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith(System.Action{System.Threading.Tasks.Task})">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith(System.Action{System.Threading.Tasks.Task},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="cancellationToken"> The <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> that will be assigned to the new continuation task.</param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith(System.Action{System.Threading.Tasks.Task},System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler"/> to associate with the continuation task and to use for its execution.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="scheduler"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith(System.Action{System.Threading.Tasks.Task},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="continuationOptions">
- Options for when the continuation is scheduled and how it behaves. This includes criteria, such
- as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnCanceled">OnlyOnCanceled</see>, as
- well as execution options, such as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.ExecuteSynchronously">ExecuteSynchronously</see>.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed. If the continuation criteria specified through the <paramref name="continuationOptions"/> parameter are not met, the continuation task will be canceled
- instead of scheduled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="continuationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith(System.Action{System.Threading.Tasks.Task},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="continuationOptions">
- Options for when the continuation is scheduled and how it behaves. This includes criteria, such
- as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnCanceled">OnlyOnCanceled</see>, as
- well as execution options, such as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.ExecuteSynchronously">ExecuteSynchronously</see>.
- </param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> that will be assigned to the new continuation task.</param>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler"/> to associate with the continuation task and to use for its
- execution.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed. If the criteria specified through the <paramref name="continuationOptions"/> parameter
- are not met, the continuation task will be canceled instead of scheduled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="continuationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="scheduler"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith``1(System.Func{System.Threading.Tasks.Task,``0})">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <typeparam name="TResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith``1(System.Func{System.Threading.Tasks.Task,``0},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <typeparam name="TResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> that will be assigned to the new continuation task.</param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith``1(System.Func{System.Threading.Tasks.Task,``0},System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <typeparam name="TResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler"/> to associate with the continuation task and to use for its execution.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="scheduler"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith``1(System.Func{System.Threading.Tasks.Task,``0},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <typeparam name="TResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="continuationOptions">
- Options for when the continuation is scheduled and how it behaves. This includes criteria, such
- as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnCanceled">OnlyOnCanceled</see>, as
- well as execution options, such as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.ExecuteSynchronously">ExecuteSynchronously</see>.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current task has
- completed. If the continuation criteria specified through the <paramref name="continuationOptions"/> parameter are not met, the continuation task will be canceled
- instead of scheduled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="continuationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWith``1(System.Func{System.Threading.Tasks.Task,``0},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task"/> completes.
- </summary>
- <typeparam name="TResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">
- Options for when the continuation is scheduled and how it behaves. This includes criteria, such
- as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnCanceled">OnlyOnCanceled</see>, as
- well as execution options, such as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.ExecuteSynchronously">ExecuteSynchronously</see>.
- </param>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler"/> to associate with the continuation task and to use for its
- execution.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current task has
- completed. If the criteria specified through the <paramref name="continuationOptions"/> parameter
- are not met, the continuation task will be canceled instead of scheduled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="continuationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="scheduler"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.CreationOptionsFromContinuationOptions(System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskCreationOptions@,System.Threading.Tasks.InternalTaskOptions@)">
- <summary>
- Converts TaskContinuationOptions to TaskCreationOptions, and also does
- some validity checking along the way.
- </summary>
- <param name="continuationOptions">Incoming TaskContinuationOptions</param>
- <param name="creationOptions">Outgoing TaskCreationOptions</param>
- <param name="internalOptions">Outgoing InternalTaskOptions</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.ContinueWithCore(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Registers the continuation and possibly runs it (if the task is already finished).
- </summary>
- <param name="continuationTask">The continuation task itself.</param>
- <param name="scheduler">TaskScheduler with which to associate continuation task.</param>
- <param name="options">Restrictions on when the continuation becomes active.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAll(System.Threading.Tasks.Task[])">
- <summary>
- Waits for all of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <param name="tasks">
- An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.AggregateException">
- At least one of the <see cref="T:System.Threading.Tasks.Task"/> instances was canceled -or- an exception was thrown during
- the execution of at least one of the <see cref="T:System.Threading.Tasks.Task"/> instances.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAll(System.Threading.Tasks.Task[],System.TimeSpan)">
- <summary>
- Waits for all of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <returns>
- true if all of the <see cref="T:System.Threading.Tasks.Task"/> instances completed execution within the allotted time;
- otherwise, false.
- </returns>
- <param name="tasks">
- An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <param name="timeout">
- A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.AggregateException">
- At least one of the <see cref="T:System.Threading.Tasks.Task"/> instances was canceled -or- an exception was thrown during
- the execution of at least one of the <see cref="T:System.Threading.Tasks.Task"/> instances.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="timeout"/> is a negative number other than -1 milliseconds, which represents an
- infinite time-out -or- timeout is greater than
- <see cref="F:System.Int32.MaxValue"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAll(System.Threading.Tasks.Task[],System.Int32)">
- <summary>
- Waits for all of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <returns>
- true if all of the <see cref="T:System.Threading.Tasks.Task"/> instances completed execution within the allotted time;
- otherwise, false.
- </returns>
- <param name="millisecondsTimeout">
- The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to
- wait indefinitely.</param>
- <param name="tasks">An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.AggregateException">
- At least one of the <see cref="T:System.Threading.Tasks.Task"/> instances was canceled -or- an exception was thrown during
- the execution of at least one of the <see cref="T:System.Threading.Tasks.Task"/> instances.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="millisecondsTimeout"/> is a negative number other than -1, which represents an
- infinite time-out.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAll(System.Threading.Tasks.Task[],System.Threading.CancellationToken)">
- <summary>
- Waits for all of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <returns>
- true if all of the <see cref="T:System.Threading.Tasks.Task"/> instances completed execution within the allotted time;
- otherwise, false.
- </returns>
- <param name="tasks">
- An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <param name="cancellationToken">
- A <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> to observe while waiting for the tasks to complete.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.AggregateException">
- At least one of the <see cref="T:System.Threading.Tasks.Task"/> instances was canceled -or- an exception was thrown during
- the execution of at least one of the <see cref="T:System.Threading.Tasks.Task"/> instances.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The <paramref name="cancellationToken"/> was canceled.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAll(System.Threading.Tasks.Task[],System.Int32,System.Threading.CancellationToken)">
- <summary>
- Waits for all of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <returns>
- true if all of the <see cref="T:System.Threading.Tasks.Task"/> instances completed execution within the allotted time;
- otherwise, false.
- </returns>
- <param name="tasks">
- An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <param name="millisecondsTimeout">
- The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to
- wait indefinitely.
- </param>
- <param name="cancellationToken">
- A <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> to observe while waiting for the tasks to complete.
- </param>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.AggregateException">
- At least one of the <see cref="T:System.Threading.Tasks.Task"/> instances was canceled -or- an exception was thrown during
- the execution of at least one of the <see cref="T:System.Threading.Tasks.Task"/> instances.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="millisecondsTimeout"/> is a negative number other than -1, which represents an
- infinite time-out.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The <paramref name="cancellationToken"/> was canceled.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAllSTAAnd64Aware(System.Threading.WaitHandle[],System.Int32,System.Threading.CancellationToken)">
- <summary>
- Waits for a set of handles in a STA-aware way. In other words, it will wait for each
- of the events individually if we're on a STA thread, because MsgWaitForMultipleObjectsEx
- can't do a true wait-all due to its hidden message queue event. This is not atomic,
- of course, but we only wait on one-way (MRE) events anyway so this is OK.
- </summary>
- <param name="waitHandles">An array of wait handles to wait on.</param>
- <param name="millisecondsTimeout">The timeout to use during waits.</param>
- <param name="cancellationToken">The cancellationToken that enables a wait to be canceled.</param>
- <returns>True if all waits succeeded, false if a timeout occurred.</returns>
- </member>
- <member name="M:System.Threading.Tasks.Task.FastWaitAll(System.Threading.Tasks.Task[])">
- <summary>
- Internal WaitAll implementation which is meant to be used with small number of tasks,
- optimized for Parallel.Invoke and other structured primitives.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.AddExceptionsForCompletedTask(System.Collections.Generic.List{System.Exception}@,System.Threading.Tasks.Task)">
- <summary>
- This internal function is only meant to be called by WaitAll()
- If the completed task is canceled or it has other exceptions, here we will add those
- into the passed in exception list (which will be lazily initialized here).
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAny(System.Threading.Tasks.Task[])">
- <summary>
- Waits for any of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <param name="tasks">
- An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <returns>The index of the completed task in the <paramref name="tasks"/> array argument.</returns>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAny(System.Threading.Tasks.Task[],System.TimeSpan)">
- <summary>
- Waits for any of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <param name="tasks">
- An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <param name="timeout">
- A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <returns>
- The index of the completed task in the <paramref name="tasks"/> array argument, or -1 if the
- timeout occurred.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="timeout"/> is a negative number other than -1 milliseconds, which represents an
- infinite time-out -or- timeout is greater than
- <see cref="F:System.Int32.MaxValue"/>.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAny(System.Threading.Tasks.Task[],System.Threading.CancellationToken)">
- <summary>
- Waits for any of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <param name="tasks">
- An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <param name="cancellationToken">
- A <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> to observe while waiting for a task to complete.
- </param>
- <returns>
- The index of the completed task in the <paramref name="tasks"/> array argument.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The <paramref name="cancellationToken"/> was canceled.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAny(System.Threading.Tasks.Task[],System.Int32)">
- <summary>
- Waits for any of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <param name="tasks">
- An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <param name="millisecondsTimeout">
- The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to
- wait indefinitely.
- </param>
- <returns>
- The index of the completed task in the <paramref name="tasks"/> array argument, or -1 if the
- timeout occurred.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="millisecondsTimeout"/> is a negative number other than -1, which represents an
- infinite time-out.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task.WaitAny(System.Threading.Tasks.Task[],System.Int32,System.Threading.CancellationToken)">
- <summary>
- Waits for any of the provided <see cref="T:System.Threading.Tasks.Task"/> objects to complete execution.
- </summary>
- <param name="tasks">
- An array of <see cref="T:System.Threading.Tasks.Task"/> instances on which to wait.
- </param>
- <param name="millisecondsTimeout">
- The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to
- wait indefinitely.
- </param>
- <param name="cancellationToken">
- A <see cref="P:System.Threading.Tasks.Task.CancellationToken"/> to observe while waiting for a task to complete.
- </param>
- <returns>
- The index of the completed task in the <paramref name="tasks"/> array argument, or -1 if the
- timeout occurred.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="tasks"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentException">
- The <paramref name="tasks"/> argument contains a null element.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="millisecondsTimeout"/> is a negative number other than -1, which represents an
- infinite time-out.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The <paramref name="cancellationToken"/> was canceled.
- </exception>
- </member>
- <member name="P:System.Threading.Tasks.Task.Id">
- <summary>
- Gets a unique ID for this <see cref="T:System.Threading.Tasks.Task">Task</see> instance.
- </summary>
- <remarks>
- Task IDs are assigned on-demand and do not necessarily represent the order in the which Task
- instances were created.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.Task.CurrentId">
- <summary>
- Returns the unique ID of the currently executing <see cref="T:System.Threading.Tasks.Task">Task</see>.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.InternalCurrent">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.Task">Task</see> instance currently executing, or
- null if none exists.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.CurrentStackGuard">
- <summary>
- Gets the StackGuard object assigned to the current thread.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.Exception">
- <summary>
- Gets the <see cref="T:System.AggregateException">Exception</see> that caused the <see cref="T:System.Threading.Tasks.Task">Task</see> to end prematurely. If the <see cref="T:System.Threading.Tasks.Task">Task</see> completed successfully or has not yet thrown any
- exceptions, this will return null.
- </summary>
- <remarks>
- Tasks that throw unhandled exceptions store the resulting exception and propagate it wrapped in a
- <see cref="T:System.AggregateException"/> in calls to <see cref="M:System.Threading.Tasks.Task.Wait">Wait</see>
- or in accesses to the <see cref="P:System.Threading.Tasks.Task.Exception"/> property. Any exceptions not observed by the time
- the Task instance is garbage collected will be propagated on the finalizer thread.
- </remarks>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task">Task</see>
- has been disposed.
- </exception>
- </member>
- <member name="P:System.Threading.Tasks.Task.Status">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> of this Task.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsCanceled">
- <summary>
- Gets whether this <see cref="T:System.Threading.Tasks.Task">Task</see> instance has completed
- execution due to being canceled.
- </summary>
- <remarks>
- A <see cref="T:System.Threading.Tasks.Task">Task</see> will complete in Canceled state either if its <see cref="P:System.Threading.Tasks.Task.CancellationToken">CancellationToken</see>
- was marked for cancellation before the task started executing, or if the task acknowledged the cancellation request on
- its already signaled CancellationToken by throwing an
- <see cref="T:System.OperationCanceledException">OperationCanceledException</see> that bears the same
- <see cref="T:System.Threading.CancellationToken">CancellationToken</see>.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsCancellationRequested">
- <summary>
- Returns true if this task has a cancellation token and it was signaled.
- To be used internally in execute entry codepaths.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.CancellationToken">
- <summary>
- This internal property provides access to the CancellationToken that was set on the task
- when it was constructed.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsCancellationAcknowledged">
- <summary>
- Gets whether this <see cref="T:System.Threading.Tasks.Task"/> threw an OperationCanceledException while its CancellationToken was signaled.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsCompleted">
- <summary>
- Gets whether this <see cref="T:System.Threading.Tasks.Task">Task</see> has completed.
- </summary>
- <remarks>
- <see cref="P:System.Threading.Tasks.Task.IsCompleted"/> will return true when the Task is in one of the three
- final states: <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsDisposed">
- <summary>
- Checks whether this task has been disposed.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.CreationOptions">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions</see> used
- to create this task.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.System#IAsyncResult#AsyncWaitHandle">
- <summary>
- Gets a <see cref="T:System.Threading.WaitHandle"/> that can be used to wait for the task to
- complete.
- </summary>
- <remarks>
- Using the wait functionality provided by <see cref="M:System.Threading.Tasks.Task.Wait"/>
- should be preferred over using <see cref="P:System.IAsyncResult.AsyncWaitHandle"/> for similar
- functionality.
- </remarks>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task"/> has been disposed.
- </exception>
- </member>
- <member name="P:System.Threading.Tasks.Task.AsyncState">
- <summary>
- Gets the state object supplied when the <see cref="T:System.Threading.Tasks.Task">Task</see> was created,
- or null if none was supplied.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.System#IAsyncResult#CompletedSynchronously">
- <summary>
- Gets an indication of whether the asynchronous operation completed synchronously.
- </summary>
- <value>true if the asynchronous operation completed synchronously; otherwise, false.</value>
- </member>
- <member name="P:System.Threading.Tasks.Task.ExecutingTaskScheduler">
- <summary>
- Provides access to the TaskScheduler responsible for executing this Task.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.Factory">
- <summary>
- Provides access to factory methods for creating <see cref="T:System.Threading.Tasks.Task"/> and <see cref="T:System.Threading.Tasks.Task`1"/> instances.
- </summary>
- <remarks>
- The factory returned from <see cref="P:System.Threading.Tasks.Task.Factory"/> is a default instance
- of <see cref="T:System.Threading.Tasks.TaskFactory"/>, as would result from using
- the default constructor on TaskFactory.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.Task.CompletedEvent">
- <summary>
- Provides an event that can be used to wait for completion.
- Only called by Wait*(), which means that we really do need to instantiate a completion event.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsSelfReplicatingRoot">
- <summary>
- Determines whether this is the root task of a self replicating group.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsChildReplica">
- <summary>
- Determines whether the task is a replica itself.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.ExceptionRecorded">
- <summary>
- The property formerly known as IsFaulted.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsFaulted">
- <summary>
- Gets whether the <see cref="T:System.Threading.Tasks.Task"/> completed due to an unhandled exception.
- </summary>
- <remarks>
- If <see cref="P:System.Threading.Tasks.Task.IsFaulted"/> is true, the Task's <see cref="P:System.Threading.Tasks.Task.Status"/> will be equal to
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">TaskStatus.Faulted</see>, and its
- <see cref="P:System.Threading.Tasks.Task.Exception"/> property will be non-null.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsExceptionObservedByParent">
- <summary>
- Checks whether the TASK_STATE_EXCEPTIONOBSERVEDBYPARENT status flag is set,
- This will only be used by the implicit wait to prevent double throws
-
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.Task.IsDelegateInvoked">
- <summary>
- Checks whether the body was ever invoked. Used by task scheduler code to verify custom schedulers actually ran the task.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.Task.TaskContinuation">
- <summary>
- A structure to hold continuation information.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task.TaskContinuation.#ctor(System.Threading.Tasks.Task,System.Threading.Tasks.TaskScheduler,System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Constructs a new continuation structure.
- </summary>
- <param name="task">The task to be activated.</param>
- <param name="options">The continuation options.</param>
- <param name="scheduler">The scheduler to use for the continuation.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task.TaskContinuation.Run(System.Threading.Tasks.Task,System.Boolean)">
- <summary>
- Invokes the continuation for the target completion task.
- </summary>
- <param name="completedTask">The completed task.</param>
- <param name="bCanInlineContinuationTask">Whether the continuation can be inlined.</param>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{`0})">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task`1"/> with the specified function.
- </summary>
- <param name="function">
- The delegate that represents the code to execute in the task. When the function has completed,
- the task's <see cref="P:System.Threading.Tasks.Task`1.Result"/> property will be set to return the result value of the function.
- </param>
- <exception cref="T:System.ArgumentException">
- The <paramref name="function"/> argument is null.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{`0},System.Threading.CancellationToken)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task`1"/> with the specified function.
- </summary>
- <param name="function">
- The delegate that represents the code to execute in the task. When the function has completed,
- the task's <see cref="P:System.Threading.Tasks.Task`1.Result"/> property will be set to return the result value of the function.
- </param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to be assigned to this task.</param>
- <exception cref="T:System.ArgumentException">
- The <paramref name="function"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{`0},System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task`1"/> with the specified function and creation options.
- </summary>
- <param name="function">
- The delegate that represents the code to execute in the task. When the function has completed,
- the task's <see cref="P:System.Threading.Tasks.Task`1.Result"/> property will be set to return the result value of the function.
- </param>
- <param name="creationOptions">
- The <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions</see> used to
- customize the task's behavior.
- </param>
- <exception cref="T:System.ArgumentException">
- The <paramref name="function"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskCreationOptions"/>.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{`0},System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task`1"/> with the specified function and creation options.
- </summary>
- <param name="function">
- The delegate that represents the code to execute in the task. When the function has completed,
- the task's <see cref="P:System.Threading.Tasks.Task`1.Result"/> property will be set to return the result value of the function.
- </param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> that will be assigned to the new task.</param>
- <param name="creationOptions">
- The <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions</see> used to
- customize the task's behavior.
- </param>
- <exception cref="T:System.ArgumentException">
- The <paramref name="function"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskCreationOptions"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{System.Object,`0},System.Object)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task`1"/> with the specified function and state.
- </summary>
- <param name="function">
- The delegate that represents the code to execute in the task. When the function has completed,
- the task's <see cref="P:System.Threading.Tasks.Task`1.Result"/> property will be set to return the result value of the function.
- </param>
- <param name="state">An object representing data to be used by the action.</param>
- <exception cref="T:System.ArgumentException">
- The <paramref name="function"/> argument is null.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{System.Object,`0},System.Object,System.Threading.CancellationToken)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task`1"/> with the specified action, state, and options.
- </summary>
- <param name="function">
- The delegate that represents the code to execute in the task. When the function has completed,
- the task's <see cref="P:System.Threading.Tasks.Task`1.Result"/> property will be set to return the result value of the function.
- </param>
- <param name="state">An object representing data to be used by the function.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to be assigned to the new task.</param>
- <exception cref="T:System.ArgumentException">
- The <paramref name="function"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{System.Object,`0},System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task`1"/> with the specified action, state, and options.
- </summary>
- <param name="function">
- The delegate that represents the code to execute in the task. When the function has completed,
- the task's <see cref="P:System.Threading.Tasks.Task`1.Result"/> property will be set to return the result value of the function.
- </param>
- <param name="state">An object representing data to be used by the function.</param>
- <param name="creationOptions">
- The <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions</see> used to
- customize the task's behavior.
- </param>
- <exception cref="T:System.ArgumentException">
- The <paramref name="function"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskCreationOptions"/>.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{System.Object,`0},System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Initializes a new <see cref="T:System.Threading.Tasks.Task`1"/> with the specified action, state, and options.
- </summary>
- <param name="function">
- The delegate that represents the code to execute in the task. When the function has completed,
- the task's <see cref="P:System.Threading.Tasks.Task`1.Result"/> property will be set to return the result value of the function.
- </param>
- <param name="state">An object representing data to be used by the function.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to be assigned to the new task.</param>
- <param name="creationOptions">
- The <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions</see> used to
- customize the task's behavior.
- </param>
- <exception cref="T:System.ArgumentException">
- The <paramref name="function"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskCreationOptions"/>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{`0},System.Threading.Tasks.Task,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.InternalTaskOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a new future object.
- </summary>
- <param name="parent">The parent task for this future.</param>
- <param name="valueSelector">A function that yields the future value.</param>
- <param name="scheduler">The task scheduler which will be used to execute the future.</param>
- <param name="cancellationToken">The CancellationToken for the task.</param>
- <param name="creationOptions">Options to control the future's behavior.</param>
- <param name="internalOptions">Internal options to control the future's behavior.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="creationOptions"/> argument specifies
- a SelfReplicating <see cref="T:System.Threading.Tasks.Task`1"/>, which is illegal."/>.</exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.#ctor(System.Func{System.Object,`0},System.Object,System.Threading.Tasks.Task,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.InternalTaskOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a new future object.
- </summary>
- <param name="parent">The parent task for this future.</param>
- <param name="state">An object containing data to be used by the action; may be null.</param>
- <param name="valueSelector">A function that yields the future value.</param>
- <param name="cancellationToken">The CancellationToken for the task.</param>
- <param name="scheduler">The task scheduler which will be used to execute the future.</param>
- <param name="creationOptions">Options to control the future's behavior.</param>
- <param name="internalOptions">Internal options to control the future's behavior.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="creationOptions"/> argument specifies
- a SelfReplicating <see cref="T:System.Threading.Tasks.Task`1"/>, which is illegal."/>.</exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.InvokeFuture(System.Object)">
- <summary>
- Evaluates the value selector of the Task which is passed in as an object and stores the result.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith(System.Action{System.Threading.Tasks.Task{`0}})">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith(System.Action{System.Threading.Tasks.Task{`0}},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> that will be assigned to the new continuation task.</param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith(System.Action{System.Threading.Tasks.Task{`0}},System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler"/> to associate with the continuation task and to use for its execution.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="scheduler"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith(System.Action{System.Threading.Tasks.Task{`0}},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="continuationOptions">
- Options for when the continuation is scheduled and how it behaves. This includes criteria, such
- as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnCanceled">OnlyOnCanceled</see>, as
- well as execution options, such as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.ExecuteSynchronously">ExecuteSynchronously</see>.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed. If the continuation criteria specified through the <paramref name="continuationOptions"/> parameter are not met, the continuation task will be canceled
- instead of scheduled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="continuationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith(System.Action{System.Threading.Tasks.Task{`0}},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <param name="continuationAction">
- An action to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">
- Options for when the continuation is scheduled and how it behaves. This includes criteria, such
- as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnCanceled">OnlyOnCanceled</see>, as
- well as execution options, such as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.ExecuteSynchronously">ExecuteSynchronously</see>.
- </param>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler"/> to associate with the continuation task and to use for its
- execution.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task"/> will not be scheduled for execution until the current task has
- completed. If the criteria specified through the <paramref name="continuationOptions"/> parameter
- are not met, the continuation task will be canceled instead of scheduled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationAction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="continuationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="scheduler"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith``1(System.Func{System.Threading.Tasks.Task{`0},``0})">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <typeparam name="TNewResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current
- task has completed, whether it completes due to running to completion successfully, faulting due
- to an unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith``1(System.Func{System.Threading.Tasks.Task{`0},``0},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <typeparam name="TNewResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> that will be assigned to the new task.</param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current
- task has completed, whether it completes due to running to completion successfully, faulting due
- to an unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith``1(System.Func{System.Threading.Tasks.Task{`0},``0},System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <typeparam name="TNewResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler"/> to associate with the continuation task and to use for its execution.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="scheduler"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith``1(System.Func{System.Threading.Tasks.Task{`0},``0},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <typeparam name="TNewResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be
- passed the completed task as an argument.
- </param>
- <param name="continuationOptions">
- Options for when the continuation is scheduled and how it behaves. This includes criteria, such
- as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnCanceled">OnlyOnCanceled</see>, as
- well as execution options, such as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.ExecuteSynchronously">ExecuteSynchronously</see>.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- <para>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current
- task has completed, whether it completes due to running to completion successfully, faulting due
- to an unhandled exception, or exiting out early due to being canceled.
- </para>
- <para>
- The <paramref name="continuationFunction"/>, when executed, should return a <see cref="T:System.Threading.Tasks.Task`1"/>. This task's completion state will be transferred to the task returned
- from the ContinueWith call.
- </para>
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="continuationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.Task`1.ContinueWith``1(System.Func{System.Threading.Tasks.Task{`0},``0},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation that executes when the target <see cref="T:System.Threading.Tasks.Task`1"/> completes.
- </summary>
- <typeparam name="TNewResult">
- The type of the result produced by the continuation.
- </typeparam>
- <param name="continuationFunction">
- A function to run when the <see cref="T:System.Threading.Tasks.Task`1"/> completes. When run, the delegate will be passed as
- an argument this completed task.
- </param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> that will be assigned to the new task.</param>
- <param name="continuationOptions">
- Options for when the continuation is scheduled and how it behaves. This includes criteria, such
- as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnCanceled">OnlyOnCanceled</see>, as
- well as execution options, such as <see cref="F:System.Threading.Tasks.TaskContinuationOptions.ExecuteSynchronously">ExecuteSynchronously</see>.
- </param>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler"/> to associate with the continuation task and to use for its
- execution.
- </param>
- <returns>A new continuation <see cref="T:System.Threading.Tasks.Task`1"/>.</returns>
- <remarks>
- <para>
- The returned <see cref="T:System.Threading.Tasks.Task`1"/> will not be scheduled for execution until the current task has
- completed, whether it completes due to running to completion successfully, faulting due to an
- unhandled exception, or exiting out early due to being canceled.
- </para>
- <para>
- The <paramref name="continuationFunction"/>, when executed, should return a <see cref="T:System.Threading.Tasks.Task`1"/>.
- This task's completion state will be transferred to the task returned from the
- ContinueWith call.
- </para>
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="continuationFunction"/> argument is null.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="continuationOptions"/> argument specifies an invalid value for <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- The <paramref name="scheduler"/> argument is null.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.Tasks.Task`1"/> has been disposed.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="P:System.Threading.Tasks.Task`1.Result">
- <summary>
- Gets the result value of this <see cref="T:System.Threading.Tasks.Task`1"/>.
- </summary>
- <remarks>
- The get accessor for this property ensures that the asynchronous operation is complete before
- returning. Once the result of the computation is available, it is stored and will be returned
- immediately on later calls to <see cref="P:System.Threading.Tasks.Task`1.Result"/>.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.Task`1.Factory">
- <summary>
- Provides access to factory methods for creating <see cref="T:System.Threading.Tasks.Task`1"/> instances.
- </summary>
- <remarks>
- The factory returned from <see cref="P:System.Threading.Tasks.Task`1.Factory"/> is a default instance
- of <see cref="T:System.Threading.Tasks.TaskFactory`1"/>, as would result from using
- the default constructor on the factory type.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.TaskFactory`1">
- <summary>
- Provides support for creating and scheduling
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task{TResult}</see> objects.
- </summary>
- <typeparam name="TResult">The type of the results that are available though
- the <see cref="T:System.Threading.Tasks.Task{TResult}">Task{TResult}</see> objects that are associated with
- the methods in this class.</typeparam>
- <remarks>
- <para>
- There are many common patterns for which tasks are relevant. The <see cref="T:System.Threading.Tasks.TaskFactory`1"/>
- class encodes some of these patterns into methods that pick up default settings, which are
- configurable through its constructors.
- </para>
- <para>
- A default instance of <see cref="T:System.Threading.Tasks.TaskFactory`1"/> is available through the
- <see cref="P:System.Threading.Tasks.Task`1.Factory">Task{TResult}.Factory</see> property.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.#ctor">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory`1"/> instance with the default configuration.
- </summary>
- <remarks>
- This constructor creates a <see cref="T:System.Threading.Tasks.TaskFactory`1"/> instance with a default configuration. The
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to
- <see cref="F:System.Threading.Tasks.TaskCreationOptions.None">TaskCreationOptions.None</see>, the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <see cref="F:System.Threading.Tasks.TaskContinuationOptions.None">TaskContinuationOptions.None</see>,
- and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is
- initialized to the current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.#ctor(System.Threading.CancellationToken)">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory`1"/> instance with the default configuration.
- </summary>
- <param name="cancellationToken">The default <see cref="P:System.Threading.Tasks.TaskFactory`1.CancellationToken"/> that will be assigned
- to tasks created by this <see cref="T:System.Threading.Tasks.TaskFactory"/> unless another CancellationToken is explicitly specified
- while calling the factory methods.</param>
- <remarks>
- This constructor creates a <see cref="T:System.Threading.Tasks.TaskFactory`1"/> instance with a default configuration. The
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to
- <see cref="F:System.Threading.Tasks.TaskCreationOptions.None">TaskCreationOptions.None</see>, the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <see cref="F:System.Threading.Tasks.TaskContinuationOptions.None">TaskContinuationOptions.None</see>,
- and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is
- initialized to the current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.#ctor(System.Threading.Tasks.TaskScheduler)">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory`1"/> instance with the specified configuration.
- </summary>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler">
- TaskScheduler</see> to use to schedule any tasks created with this TaskFactory{TResult}. A null value
- indicates that the current TaskScheduler should be used.
- </param>
- <remarks>
- With this constructor, the
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to
- <see cref="F:System.Threading.Tasks.TaskCreationOptions.None">TaskCreationOptions.None</see>, the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <see cref="F:System.Threading.Tasks.TaskContinuationOptions.None">TaskContinuationOptions.None</see>,
- and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is
- initialized to <paramref name="scheduler"/>, unless it's null, in which case the property is
- initialized to the current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.#ctor(System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory`1"/> instance with the specified configuration.
- </summary>
- <param name="creationOptions">
- The default <see cref="T:System.Threading.Tasks.TaskCreationOptions">
- TaskCreationOptions</see> to use when creating tasks with this TaskFactory{TResult}.
- </param>
- <param name="continuationOptions">
- The default <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> to use when creating continuation tasks with this TaskFactory{TResult}.
- </param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The exception that is thrown when the
- <paramref name="creationOptions"/> argument or the <paramref name="continuationOptions"/>
- argument specifies an invalid value.
- </exception>
- <remarks>
- With this constructor, the
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to <paramref name="creationOptions"/>,
- the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <paramref name="continuationOptions"/>, and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is initialized to the
- current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.#ctor(System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory`1"/> instance with the specified configuration.
- </summary>
- <param name="cancellationToken">The default <see cref="P:System.Threading.Tasks.TaskFactory`1.CancellationToken"/> that will be assigned
- to tasks created by this <see cref="T:System.Threading.Tasks.TaskFactory"/> unless another CancellationToken is explicitly specified
- while calling the factory methods.</param>
- <param name="creationOptions">
- The default <see cref="T:System.Threading.Tasks.TaskCreationOptions">
- TaskCreationOptions</see> to use when creating tasks with this TaskFactory{TResult}.
- </param>
- <param name="continuationOptions">
- The default <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> to use when creating continuation tasks with this TaskFactory{TResult}.
- </param>
- <param name="scheduler">
- The default <see cref="T:System.Threading.Tasks.TaskScheduler">
- TaskScheduler</see> to use to schedule any Tasks created with this TaskFactory{TResult}. A null value
- indicates that TaskScheduler.Current should be used.
- </param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The exception that is thrown when the
- <paramref name="creationOptions"/> argument or the <paramref name="continuationOptions"/>
- argumentspecifies an invalid value.
- </exception>
- <remarks>
- With this constructor, the
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to <paramref name="creationOptions"/>,
- the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <paramref name="continuationOptions"/>, and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is initialized to
- <paramref name="scheduler"/>, unless it's null, in which case the property is initialized to the
- current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.StartNew(System.Func{`0})">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.StartNew(System.Func{`0},System.Threading.CancellationToken)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory`1.CancellationToken"/> that will be assigned to the new task.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.StartNew(System.Func{`0},System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.StartNew(System.Func{`0},System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory`1.CancellationToken"/> that will be assigned to the new task.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created <see cref="T:System.Threading.Tasks.Task{TResult}">
- Task{TResult}</see>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="scheduler"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.StartNew(System.Func{System.Object,`0},System.Object)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="state">An object containing data to be used by the <paramref name="function"/>
- delegate.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.StartNew(System.Func{System.Object,`0},System.Object,System.Threading.CancellationToken)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="state">An object containing data to be used by the <paramref name="function"/>
- delegate.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory`1.CancellationToken"/> that will be assigned to the new task.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.StartNew(System.Func{System.Object,`0},System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="state">An object containing data to be used by the <paramref name="function"/>
- delegate.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.StartNew(System.Func{System.Object,`0},System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="state">An object containing data to be used by the <paramref name="function"/>
- delegate.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory`1.CancellationToken"/> that will be assigned to the new task.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created <see cref="T:System.Threading.Tasks.Task{TResult}">
- Task{TResult}</see>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="scheduler"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync(System.IAsyncResult,System.Func{System.IAsyncResult,`0})">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that executes an end
- method function when a specified <see cref="T:System.IAsyncResult">IAsyncResult</see> completes.
- </summary>
- <param name="asyncResult">The IAsyncResult whose completion should trigger the processing of the
- <paramref name="endMethod"/>.</param>
- <param name="endMethod">The function delegate that processes the completed <paramref
- name="asyncResult"/>.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="asyncResult"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents the
- asynchronous operation.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync(System.IAsyncResult,System.Func{System.IAsyncResult,`0},System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that executes an end
- method function when a specified <see cref="T:System.IAsyncResult">IAsyncResult</see> completes.
- </summary>
- <param name="asyncResult">The IAsyncResult whose completion should trigger the processing of the
- <paramref name="endMethod"/>.</param>
- <param name="endMethod">The function delegate that processes the completed <paramref
- name="asyncResult"/>.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="asyncResult"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents the
- asynchronous operation.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync(System.IAsyncResult,System.Func{System.IAsyncResult,`0},System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that executes an end
- method function when a specified <see cref="T:System.IAsyncResult">IAsyncResult</see> completes.
- </summary>
- <param name="asyncResult">The IAsyncResult whose completion should trigger the processing of the
- <paramref name="endMethod"/>.</param>
- <param name="endMethod">The function delegate that processes the completed <paramref name="asyncResult"/>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the task that executes the end method.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="asyncResult"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents the
- asynchronous operation.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync(System.Func{System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,`0},System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync(System.Func{System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,`0},System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync``1(System.Func{``0,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,`0},``0,System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync``1(System.Func{``0,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,`0},``0,System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync``2(System.Func{``0,``1,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,`0},``0,``1,System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync``2(System.Func{``0,``1,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,`0},``0,``1,System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync``3(System.Func_{``0,``1,``2,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,`0},``0,``1,``2,System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg3">The type of the third argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg3">The third argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.FromAsync``3(System.Func_{``0,``1,``2,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,`0},``0,``1,``2,System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg3">The type of the third argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg3">The third argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAll(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task[],`0})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in
- the <paramref name="tasks"/> array have completed.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAll(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task[],`0},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in
- the <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAll(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task[],`0},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the <paramref name="tasks"/> array have completed.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAll(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task[],`0},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAll``1(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0}[],`0})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAll``1(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0}[],`0},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAll``1(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0}[],`0},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAll``1(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0}[],`0},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAny(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task,`0})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the <paramref
- name="tasks"/> array completes.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAny(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task,`0},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAny(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task,`0},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the <paramref name="tasks"/> array completes.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAny(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task,`0},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAny``1(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0},`0})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAny``1(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0},`0},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAny``1(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0},`0},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory`1.ContinueWhenAny``1(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0},`0},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.TaskFactory`1.CancellationToken">
- <summary>
- Gets the default <see cref="T:System.Threading.CancellationToken">CancellationToken</see> of this
- TaskFactory.
- </summary>
- <remarks>
- This property returns the default <see cref="P:System.Threading.Tasks.TaskFactory`1.CancellationToken"/> that will be assigned to all
- tasks created by this factory unless another CancellationToken value is explicitly specified
- during the call to the factory methods.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.TaskFactory`1.Scheduler">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> of this
- TaskFactory{TResult}.
- </summary>
- <remarks>
- This property returns the default scheduler for this factory. It will be used to schedule all
- tasks unless another scheduler is explicitly specified during calls to this factory's methods.
- If null, <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>
- will be used.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.TaskFactory`1.CreationOptions">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions
- </see> value of this TaskFactory{TResult}.
- </summary>
- <remarks>
- This property returns the default creation options for this factory. They will be used to create all
- tasks unless other options are explicitly specified during calls to this factory's methods.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.TaskFactory`1.ContinuationOptions">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskContinuationOptions
- </see> value of this TaskFactory{TResult}.
- </summary>
- <remarks>
- This property returns the default continuation options for this factory. They will be used to create
- all continuation tasks unless other options are explicitly specified during calls to this factory's methods.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.TaskStatus">
- <summary>
- Represents the current stage in the lifecycle of a <see cref="T:System.Threading.Tasks.Task"/>.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskStatus.Created">
- <summary>
- The task has been initialized but has not yet been scheduled.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskStatus.WaitingForActivation">
- <summary>
- The task is waiting to be activated and scheduled internally by the .NET Framework infrastructure.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskStatus.WaitingToRun">
- <summary>
- The task has been scheduled for execution but has not yet begun executing.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskStatus.Running">
- <summary>
- The task is running but has not yet completed.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskStatus.WaitingForChildrenToComplete">
- <summary>
- The task has finished executing and is implicitly waiting for
- attached child tasks to complete.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskStatus.RanToCompletion">
- <summary>
- The task completed execution successfully.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskStatus.Canceled">
- <summary>
- The task acknowledged cancellation by throwing an OperationCanceledException with its own CancellationToken
- while the token was in signaled state, or the task's CancellationToken was already signaled before the
- task started executing.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskStatus.Faulted">
- <summary>
- The task completed due to an unhandled exception.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.ParallelForReplicaTask.SaveStateForNextReplica(System.Object)">
- <summary>
- In some cases a replica will want to quit prematurely (ie. before finishing a chunk of work it may have grabbed)
- yet they will need the next replica to pick things up from where they left. This API is used to save such state.
-
- Calling it is also the only way to record a premature exit.
- </summary>
- <param name="stateForNextReplica"></param>
- </member>
- <member name="T:System.Threading.Tasks.TaskCreationOptions">
- <summary>
- Specifies flags that control optional behavior for the creation and execution of tasks.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskCreationOptions.None">
- <summary>
- Specifies that the default behavior should be used.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskCreationOptions.PreferFairness">
- <summary>
- A hint to a <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> to schedule a
- task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to
- be run sooner, and tasks scheduled later will be more likely to be run later.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskCreationOptions.LongRunning">
- <summary>
- Specifies that a task will be a long-running, course-grained operation. It provides a hint to the
- <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> that oversubscription may be
- warranted.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskCreationOptions.AttachedToParent">
- <summary>
- Specifies that a task is attached to a parent in the task hierarchy.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.InternalTaskOptions">
- <summary>
- Task creation flags which are only used internally.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.InternalTaskOptions.None">
- <summary> Specifies "No internal task options" </summary>
- </member>
- <member name="F:System.Threading.Tasks.InternalTaskOptions.InternalOptionsMask">
- <summary>Used to filter out internal vs. public task creation options.</summary>
- </member>
- <member name="F:System.Threading.Tasks.InternalTaskOptions.QueuedByRuntime">
- <summary>Specifies that the task will be queued by the runtime before handing it over to the user.
- This flag will be used to skip the cancellationtoken registration step, which is only meant for unstarted tasks.</summary>
- </member>
- <member name="T:System.Threading.Tasks.TaskContinuationOptions">
- <summary>
- Specifies flags that control optional behavior for the creation and execution of continuation tasks.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.None">
- <summary>
- Default = "Continue on any, no task options, run asynchronously"
- Specifies that the default behavior should be used. Continuations, by default, will
- be scheduled when the antecedent task completes, regardless of the task's final <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see>.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.PreferFairness">
- <summary>
- A hint to a <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> to schedule a
- task in as fair a manner as possible, meaning that tasks scheduled sooner will be more likely to
- be run sooner, and tasks scheduled later will be more likely to be run later.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.LongRunning">
- <summary>
- Specifies that a task will be a long-running, course-grained operation. It provides
- a hint to the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> that
- oversubscription may be warranted.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.AttachedToParent">
- <summary>
- Specifies that a task is attached to a parent in the task hierarchy.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.NotOnRanToCompletion">
- <summary>
- Specifies that the continuation task should not be scheduled if its antecedent ran to completion.
- This option is not valid for multi-task continuations.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.NotOnFaulted">
- <summary>
- Specifies that the continuation task should not be scheduled if its antecedent threw an unhandled
- exception. This option is not valid for multi-task continuations.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.NotOnCanceled">
- <summary>
- Specifies that the continuation task should not be scheduled if its antecedent was canceled. This
- option is not valid for multi-task continuations.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnRanToCompletion">
- <summary>
- Specifies that the continuation task should be scheduled only if its antecedent ran to
- completion. This option is not valid for multi-task continuations.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnFaulted">
- <summary>
- Specifies that the continuation task should be scheduled only if its antecedent threw an
- unhandled exception. This option is not valid for multi-task continuations.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.OnlyOnCanceled">
- <summary>
- Specifies that the continuation task should be scheduled only if its antecedent was canceled.
- This option is not valid for multi-task continuations.
- </summary>
- </member>
- <member name="F:System.Threading.Tasks.TaskContinuationOptions.ExecuteSynchronously">
- <summary>
- Specifies that the continuation task should be executed synchronously. With this option
- specified, the continuation will be run on the same thread that causes the antecedent task to
- transition into its final state. If the antecedent is already complete when the continuation is
- created, the continuation will run on the thread creating the continuation. Only very
- short-running continuations should be executed synchronously.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.StackGuard">
- <summary>
- Internal helper class to keep track of stack depth and decide whether we should inline or not.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.StackGuard.TryBeginInliningScope">
- <summary>
- This method needs to be called before attempting inline execution on the current thread.
- If false is returned, it means we are too close to the end of the stack and should give up inlining.
- Each call to TryBeginInliningScope() that returns true must be matched with a
- call to EndInliningScope() regardless of whether inlining actually took place.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.StackGuard.EndInliningScope">
- <summary>
- This needs to be called once for each previous successful TryBeginInliningScope() call after
- inlining related logic runs.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.TaskCanceledException">
- <summary>
- Represents an exception used to communicate task cancellation.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskCanceledException.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskCanceledException"/> class.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskCanceledException.#ctor(System.String)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskCanceledException"/>
- class with a specified error message.
- </summary>
- <param name="message">The error message that explains the reason for the exception.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskCanceledException.#ctor(System.String,System.Exception)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskCanceledException"/>
- class with a specified error message and a reference to the inner exception that is the cause of
- this exception.
- </summary>
- <param name="message">The error message that explains the reason for the exception.</param>
- <param name="innerException">The exception that is the cause of the current exception.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskCanceledException.#ctor(System.Threading.Tasks.Task)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskCanceledException"/> class
- with a reference to the <see cref="T:System.Threading.Tasks.Task"/> that has been canceled.
- </summary>
- <param name="task">A task that has been canceled.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskCanceledException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskCanceledException"/>
- class with serialized data.
- </summary>
- <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
- <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination. </param>
- </member>
- <member name="P:System.Threading.Tasks.TaskCanceledException.Task">
- <summary>
- Gets the task associated with this exception.
- </summary>
- <remarks>
- It is permissible for no Task to be associated with a
- <see cref="T:System.Threading.Tasks.TaskCanceledException"/>, in which case
- this property will return null.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.TaskExceptionHolder">
- <summary>
- An exception holder manages a list of exceptions for one particular task.
- It offers the ability to aggregate, but more importantly, also offers intrinsic
- support for propagating unhandled exceptions that are never observed. It does
- this by aggregating and throwing if the holder is ever GC'd without the holder's
- contents ever having been requested (e.g. by a Task.Wait, Task.get_Exception, etc).
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskExceptionHolder.#ctor(System.Threading.Tasks.Task)">
- <summary>
- Creates a new holder; it will be registered for finalization.
- </summary>
- <param name="task">The task this holder belongs to.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskExceptionHolder.Finalize">
- <summary>
- A finalizer that repropagates unhandled exceptions.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskExceptionHolder.Add(System.Object)">
- <summary>
- Add an exception to the internal list. This will ensure the holder is
- in the proper state (handled/unhandled) depending on the list's contents.
- </summary>
- <param name="exceptionObject">An exception object (either an Exception or an
- IEnumerable{Exception}) to add to the list.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskExceptionHolder.MarkAsUnhandled">
- <summary>
- A private helper method that ensures the holder is considered
- unhandled, i.e. it is registered for finalization.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskExceptionHolder.MarkAsHandled(System.Boolean)">
- <summary>
- A private helper method that ensures the holder is considered
- handled, i.e. it is not registered for finalization.
- </summary>
- <param name="calledFromFinalizer">Whether this is called from the finalizer thread.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskExceptionHolder.CreateExceptionObject(System.Boolean,System.Exception)">
- <summary>
- Allocates a new aggregate exception and adds the contents of the list to
- it. By calling this method, the holder assumes exceptions to have been
- "observed", such that the finalization check will be subsequently skipped.
- </summary>
- <param name="calledFromFinalizer">Whether this is being called from a finalizer.</param>
- <param name="includeThisException">An extra exception to be included (optionally).</param>
- <returns>The aggregate exception to throw.</returns>
- </member>
- <member name="T:System.Threading.Tasks.TaskFactory">
- <summary>
- Provides support for creating and scheduling
- <see cref="T:System.Threading.Tasks.Task">Tasks</see>.
- </summary>
- <remarks>
- <para>
- There are many common patterns for which tasks are relevant. The <see cref="T:System.Threading.Tasks.TaskFactory"/>
- class encodes some of these patterns into methods that pick up default settings, which are
- configurable through its constructors.
- </para>
- <para>
- A default instance of <see cref="T:System.Threading.Tasks.TaskFactory"/> is available through the
- <see cref="P:System.Threading.Tasks.Task.Factory">Task.Factory</see> property.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.#ctor">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory"/> instance with the default configuration.
- </summary>
- <remarks>
- This constructor creates a <see cref="T:System.Threading.Tasks.TaskFactory"/> instance with a default configuration. The
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to
- <see cref="F:System.Threading.Tasks.TaskCreationOptions.None">TaskCreationOptions.None</see>, the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <see cref="F:System.Threading.Tasks.TaskContinuationOptions.None">TaskContinuationOptions.None</see>,
- and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is
- initialized to the current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.#ctor(System.Threading.CancellationToken)">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory"/> instance with the specified configuration.
- </summary>
- <param name="cancellationToken">The default <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned
- to tasks created by this <see cref="T:System.Threading.Tasks.TaskFactory"/> unless another CancellationToken is explicitly specified
- while calling the factory methods.</param>
- <remarks>
- This constructor creates a <see cref="T:System.Threading.Tasks.TaskFactory"/> instance with a default configuration. The
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to
- <see cref="F:System.Threading.Tasks.TaskCreationOptions.None">TaskCreationOptions.None</see>, the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <see cref="F:System.Threading.Tasks.TaskContinuationOptions.None">TaskContinuationOptions.None</see>,
- and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is
- initialized to the current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.#ctor(System.Threading.Tasks.TaskScheduler)">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory"/> instance with the specified configuration.
- </summary>
- <param name="scheduler">
- The <see cref="T:System.Threading.Tasks.TaskScheduler">
- TaskScheduler</see> to use to schedule any tasks created with this TaskFactory. A null value
- indicates that the current TaskScheduler should be used.
- </param>
- <remarks>
- With this constructor, the
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to
- <see cref="F:System.Threading.Tasks.TaskCreationOptions.None">TaskCreationOptions.None</see>, the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <see cref="F:System.Threading.Tasks.TaskContinuationOptions.None">TaskContinuationOptions.None</see>,
- and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is
- initialized to <paramref name="scheduler"/>, unless it's null, in which case the property is
- initialized to the current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.#ctor(System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory"/> instance with the specified configuration.
- </summary>
- <param name="creationOptions">
- The default <see cref="T:System.Threading.Tasks.TaskCreationOptions">
- TaskCreationOptions</see> to use when creating tasks with this TaskFactory.
- </param>
- <param name="continuationOptions">
- The default <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> to use when creating continuation tasks with this TaskFactory.
- </param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The exception that is thrown when the
- <paramref name="creationOptions"/> argument or the <paramref name="continuationOptions"/>
- argument specifies an invalid value.
- </exception>
- <remarks>
- With this constructor, the
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to <paramref name="creationOptions"/>,
- the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <paramref name="continuationOptions"/>, and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is initialized to the
- current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.#ctor(System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Initializes a <see cref="T:System.Threading.Tasks.TaskFactory"/> instance with the specified configuration.
- </summary>
- <param name="cancellationToken">The default <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned
- to tasks created by this <see cref="T:System.Threading.Tasks.TaskFactory"/> unless another CancellationToken is explicitly specified
- while calling the factory methods.</param>
- <param name="creationOptions">
- The default <see cref="T:System.Threading.Tasks.TaskCreationOptions">
- TaskCreationOptions</see> to use when creating tasks with this TaskFactory.
- </param>
- <param name="continuationOptions">
- The default <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> to use when creating continuation tasks with this TaskFactory.
- </param>
- <param name="scheduler">
- The default <see cref="T:System.Threading.Tasks.TaskScheduler">
- TaskScheduler</see> to use to schedule any Tasks created with this TaskFactory. A null value
- indicates that TaskScheduler.Current should be used.
- </param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The exception that is thrown when the
- <paramref name="creationOptions"/> argument or the <paramref name="continuationOptions"/>
- argumentspecifies an invalid value.
- </exception>
- <remarks>
- With this constructor, the
- <see cref="T:System.Threading.Tasks.TaskCreationOptions"/> property is initialized to <paramref name="creationOptions"/>,
- the
- <see cref="T:System.Threading.Tasks.TaskContinuationOptions"/> property is initialized to <paramref name="continuationOptions"/>, and the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> property is initialized to
- <paramref name="scheduler"/>, unless it's null, in which case the property is initialized to the
- current scheduler (see <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>).
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew(System.Action)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task">Task</see>.
- </summary>
- <param name="action">The action delegate to execute asynchronously.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="action"/>
- argument is null.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a Task using one of its constructors
- and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution. However,
- unless creation and scheduling must be separated, StartNew is the recommended
- approach for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew(System.Action,System.Threading.CancellationToken)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task">Task</see>.
- </summary>
- <param name="action">The action delegate to execute asynchronously.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned to the new task.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="action"/>
- argument is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a Task using one of its constructors
- and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution. However,
- unless creation and scheduling must be separated, StartNew is the recommended
- approach for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew(System.Action,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task">Task</see>.
- </summary>
- <param name="action">The action delegate to execute asynchronously.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task">Task.</see></param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="action"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a Task using one of its constructors and
- then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew(System.Action,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task">Task</see>.
- </summary>
- <param name="action">The action delegate to execute asynchronously.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned to the new <see cref="T:System.Threading.Tasks.Task"/></param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task">Task.</see></param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="action"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="scheduler"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a Task using one of its constructors and
- then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew(System.Action{System.Object},System.Object)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task">Task</see>.
- </summary>
- <param name="action">The action delegate to execute asynchronously.</param>
- <param name="state">An object containing data to be used by the <paramref name="action"/>
- delegate.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="action"/>
- argument is null.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a Task using one of its constructors and
- then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew(System.Action{System.Object},System.Object,System.Threading.CancellationToken)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task">Task</see>.
- </summary>
- <param name="action">The action delegate to execute asynchronously.</param>
- <param name="state">An object containing data to be used by the <paramref name="action"/>
- delegate.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned to the new <see cref="T:System.Threading.Tasks.Task"/></param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="action"/>
- argument is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a Task using one of its constructors and
- then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew(System.Action{System.Object},System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task">Task</see>.
- </summary>
- <param name="action">The action delegate to execute asynchronously.</param>
- <param name="state">An object containing data to be used by the <paramref name="action"/>
- delegate.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task">Task.</see></param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="action"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a Task using one of its constructors and
- then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew(System.Action{System.Object},System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task">Task</see>.
- </summary>
- <param name="action">The action delegate to execute asynchronously.</param>
- <param name="state">An object containing data to be used by the <paramref name="action"/>
- delegate.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned to the new task.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task">Task.</see></param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="action"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="scheduler"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a Task using one of its constructors and
- then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew``1(System.Func{``0})">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew``1(System.Func{``0},System.Threading.CancellationToken)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned to the new <see cref="T:System.Threading.Tasks.Task"/></param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew``1(System.Func{``0},System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew``1(System.Func{``0},System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned to the new task.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created <see cref="T:System.Threading.Tasks.Task{TResult}">
- Task{TResult}</see>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="scheduler"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew``1(System.Func{System.Object,``0},System.Object)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="state">An object containing data to be used by the <paramref name="function"/>
- delegate.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew``1(System.Func{System.Object,``0},System.Object,System.Threading.CancellationToken)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="state">An object containing data to be used by the <paramref name="function"/>
- delegate.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned to the new <see cref="T:System.Threading.Tasks.Task"/></param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew``1(System.Func{System.Object,``0},System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="state">An object containing data to be used by the <paramref name="function"/>
- delegate.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.StartNew``1(System.Func{System.Object,``0},System.Object,System.Threading.CancellationToken,System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates and starts a <see cref="T:System.Threading.Tasks.Task{TResult}"/>.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="function">A function delegate that returns the future result to be available through
- the <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="state">An object containing data to be used by the <paramref name="function"/>
- delegate.</param>
- <param name="cancellationToken">The <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned to the new task.</param>
- <param name="creationOptions">A TaskCreationOptions value that controls the behavior of the
- created
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created <see cref="T:System.Threading.Tasks.Task{TResult}">
- Task{TResult}</see>.</param>
- <returns>The started <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="function"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the <paramref name="scheduler"/>
- argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- Calling StartNew is functionally equivalent to creating a <see cref="T:System.Threading.Tasks.Task`1"/> using one
- of its constructors and then calling
- <see cref="M:System.Threading.Tasks.Task.Start">Start</see> to schedule it for execution.
- However, unless creation and scheduling must be separated, StartNew is the recommended approach
- for both simplicity and performance.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync(System.IAsyncResult,System.Action{System.IAsyncResult})">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that executes an end method action
- when a specified <see cref="T:System.IAsyncResult">IAsyncResult</see> completes.
- </summary>
- <param name="asyncResult">The IAsyncResult whose completion should trigger the processing of the
- <paramref name="endMethod"/>.</param>
- <param name="endMethod">The action delegate that processes the completed <paramref
- name="asyncResult"/>.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="asyncResult"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the asynchronous
- operation.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync(System.IAsyncResult,System.Action{System.IAsyncResult},System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that executes an end method action
- when a specified <see cref="T:System.IAsyncResult">IAsyncResult</see> completes.
- </summary>
- <param name="asyncResult">The IAsyncResult whose completion should trigger the processing of the
- <paramref name="endMethod"/>.</param>
- <param name="endMethod">The action delegate that processes the completed <paramref
- name="asyncResult"/>.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="asyncResult"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the asynchronous
- operation.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync(System.IAsyncResult,System.Action{System.IAsyncResult},System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that executes an end method action
- when a specified <see cref="T:System.IAsyncResult">IAsyncResult</see> completes.
- </summary>
- <param name="asyncResult">The IAsyncResult whose completion should trigger the processing of the
- <paramref name="endMethod"/>.</param>
- <param name="endMethod">The action delegate that processes the completed <paramref name="asyncResult"/>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the task that executes the end method.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="asyncResult"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the asynchronous
- operation.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync(System.Func{System.AsyncCallback,System.Object,System.IAsyncResult},System.Action{System.IAsyncResult},System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that represents a pair of begin
- and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the
- asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync(System.Func{System.AsyncCallback,System.Object,System.IAsyncResult},System.Action{System.IAsyncResult},System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that represents a pair of begin
- and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the
- asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``1(System.Func{``0,System.AsyncCallback,System.Object,System.IAsyncResult},System.Action{System.IAsyncResult},``0,System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that represents a pair of begin
- and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the
- asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``1(System.Func{``0,System.AsyncCallback,System.Object,System.IAsyncResult},System.Action{System.IAsyncResult},``0,System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that represents a pair of begin
- and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the
- asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``2(System.Func{``0,``1,System.AsyncCallback,System.Object,System.IAsyncResult},System.Action{System.IAsyncResult},``0,``1,System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that represents a pair of begin
- and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the
- asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``2(System.Func{``0,``1,System.AsyncCallback,System.Object,System.IAsyncResult},System.Action{System.IAsyncResult},``0,``1,System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that represents a pair of begin
- and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the
- asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``3(System.Func_{``0,``1,``2,System.AsyncCallback,System.Object,System.IAsyncResult},System.Action{System.IAsyncResult},``0,``1,``2,System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that represents a pair of begin
- and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg3">The type of the third argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg3">The third argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the
- asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``3(System.Func_{``0,``1,``2,System.AsyncCallback,System.Object,System.IAsyncResult},System.Action{System.IAsyncResult},``0,``1,``2,System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task">Task</see> that represents a pair of begin
- and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg3">The type of the third argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg3">The third argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the
- asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``1(System.IAsyncResult,System.Func{System.IAsyncResult,``0})">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that executes an end
- method function when a specified <see cref="T:System.IAsyncResult">IAsyncResult</see> completes.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="asyncResult">The IAsyncResult whose completion should trigger the processing of the
- <paramref name="endMethod"/>.</param>
- <param name="endMethod">The function delegate that processes the completed <paramref
- name="asyncResult"/>.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="asyncResult"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents the
- asynchronous operation.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``1(System.IAsyncResult,System.Func{System.IAsyncResult,``0},System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that executes an end
- method function when a specified <see cref="T:System.IAsyncResult">IAsyncResult</see> completes.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="asyncResult">The IAsyncResult whose completion should trigger the processing of the
- <paramref name="endMethod"/>.</param>
- <param name="endMethod">The function delegate that processes the completed <paramref
- name="asyncResult"/>.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="asyncResult"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents the
- asynchronous operation.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``1(System.IAsyncResult,System.Func{System.IAsyncResult,``0},System.Threading.Tasks.TaskCreationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that executes an end
- method function when a specified <see cref="T:System.IAsyncResult">IAsyncResult</see> completes.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="asyncResult">The IAsyncResult whose completion should trigger the processing of the
- <paramref name="endMethod"/>.</param>
- <param name="endMethod">The function delegate that processes the completed <paramref name="asyncResult"/>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the task that executes the end method.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="asyncResult"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>A <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents the
- asynchronous operation.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``1(System.Func{System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,``0},System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``1(System.Func{System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,``0},System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``2(System.Func{``0,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,``1},``0,System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``2(System.Func{``0,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,``1},``0,System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``3(System.Func{``0,``1,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,``2},``0,``1,System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``3(System.Func{``0,``1,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,``2},``0,``1,System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``4(System.Func_{``0,``1,``2,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,``3},``0,``1,``2,System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg3">The type of the third argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg3">The third argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.FromAsync``4(System.Func_{``0,``1,``2,System.AsyncCallback,System.Object,System.IAsyncResult},System.Func{System.IAsyncResult,``3},``0,``1,``2,System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that represents a pair of
- begin and end methods that conform to the Asynchronous Programming Model pattern.
- </summary>
- <typeparam name="TArg1">The type of the first argument passed to the <paramref
- name="beginMethod"/> delegate.</typeparam>
- <typeparam name="TArg2">The type of the second argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TArg3">The type of the third argument passed to <paramref name="beginMethod"/>
- delegate.</typeparam>
- <typeparam name="TResult">The type of the result available through the
- <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.
- </typeparam>
- <param name="beginMethod">The delegate that begins the asynchronous operation.</param>
- <param name="endMethod">The delegate that ends the asynchronous operation.</param>
- <param name="arg1">The first argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg2">The second argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="arg3">The third argument passed to the <paramref name="beginMethod"/>
- delegate.</param>
- <param name="creationOptions">The TaskCreationOptions value that controls the behavior of the
- created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="state">An object containing data to be used by the <paramref name="beginMethod"/>
- delegate.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="beginMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="endMethod"/> argument is null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="creationOptions"/> argument specifies an invalid TaskCreationOptions
- value.</exception>
- <returns>The created <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see> that
- represents the asynchronous operation.</returns>
- <remarks>
- This method throws any exceptions thrown by the <paramref name="beginMethod"/>.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.CheckFromAsyncOptions(System.Threading.Tasks.TaskCreationOptions,System.Boolean)">
- <summary>
- Check validity of options passed to FromAsync method
- </summary>
- <param name="creationOptions">The options to be validated.</param>
- <param name="hasBeginMethod">determines type of FromAsync method that called this method</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll(System.Threading.Tasks.Task[],System.Action{System.Threading.Tasks.Task[]})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationAction">The action delegate to execute when all tasks in
- the <paramref name="tasks"/> array have completed.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll(System.Threading.Tasks.Task[],System.Action{System.Threading.Tasks.Task[]},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationAction">The action delegate to execute when all tasks in
- the <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll(System.Threading.Tasks.Task[],System.Action{System.Threading.Tasks.Task[]},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationAction">The action delegate to execute when all tasks in the <paramref name="tasks"/> array have completed.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll(System.Threading.Tasks.Task[],System.Action{System.Threading.Tasks.Task[]},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationAction">The action delegate to execute when all tasks in the <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``1(System.Threading.Tasks.Task{``0}[],System.Action{System.Threading.Tasks.Task{``0}[]})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationAction">The action delegate to execute when all tasks in
- the <paramref name="tasks"/> array have completed.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``1(System.Threading.Tasks.Task{``0}[],System.Action{System.Threading.Tasks.Task{``0}[]},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationAction">The action delegate to execute when all tasks in
- the <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``1(System.Threading.Tasks.Task{``0}[],System.Action{System.Threading.Tasks.Task{``0}[]},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationAction">The action delegate to execute when all tasks in the <paramref name="tasks"/> array have completed.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``1(System.Threading.Tasks.Task{``0}[],System.Action{System.Threading.Tasks.Task{``0}[]},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationAction">The action delegate to execute when all tasks in the <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``1(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task[],``0})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref
- name="continuationFunction"/>
- delegate and associated with the created <see
- cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``1(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task[],``0},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``1(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task[],``0},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``1(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task[],``0},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``2(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0}[],``1})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref
- name="continuationFunction"/>
- delegate and associated with the created <see
- cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``2(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0}[],``1},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``2(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0}[],``1},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAll``2(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0}[],``1},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of a set of provided Tasks.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue.</param>
- <param name="continuationFunction">The function delegate to execute when all tasks in the
- <paramref name="tasks"/> array have completed.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAll.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny(System.Threading.Tasks.Task[],System.Action{System.Threading.Tasks.Task})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationAction">The action delegate to execute when one task in the <paramref
- name="tasks"/> array completes.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny(System.Threading.Tasks.Task[],System.Action{System.Threading.Tasks.Task},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationAction">The action delegate to execute when one task in the <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny(System.Threading.Tasks.Task[],System.Action{System.Threading.Tasks.Task},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationAction">The action delegate to execute when one task in the <paramref name="tasks"/> array completes.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny(System.Threading.Tasks.Task[],System.Action{System.Threading.Tasks.Task},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationAction">The action delegate to execute when one task in the <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``1(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task,``0})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref
- name="continuationFunction"/>
- delegate and associated with the created <see
- cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``1(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task,``0},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``1(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task,``0},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``1(System.Threading.Tasks.Task[],System.Func{System.Threading.Tasks.Task,``0},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``2(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0},``1})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref
- name="continuationFunction"/>
- delegate and associated with the created <see
- cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``2(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0},``1},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``2(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0},``1},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``2(System.Threading.Tasks.Task{``0}[],System.Func{System.Threading.Tasks.Task{``0},``1},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TResult">The type of the result that is returned by the <paramref name="continuationFunction"/>
- delegate and associated with the created <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</typeparam>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationFunction">The function delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationFunction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``1(System.Threading.Tasks.Task{``0}[],System.Action{System.Threading.Tasks.Task{``0}})">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationAction">The action delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``1(System.Threading.Tasks.Task{``0}[],System.Action{System.Threading.Tasks.Task{``0}},System.Threading.CancellationToken)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationAction">The action delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``1(System.Threading.Tasks.Task{``0}[],System.Action{System.Threading.Tasks.Task{``0}},System.Threading.Tasks.TaskContinuationOptions)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationAction">The action delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskFactory.ContinueWhenAny``1(System.Threading.Tasks.Task{``0}[],System.Action{System.Threading.Tasks.Task{``0}},System.Threading.CancellationToken,System.Threading.Tasks.TaskContinuationOptions,System.Threading.Tasks.TaskScheduler)">
- <summary>
- Creates a continuation <see cref="T:System.Threading.Tasks.Task">Task</see>
- that will be started upon the completion of any Task in the provided set.
- </summary>
- <typeparam name="TAntecedentResult">The type of the result of the antecedent <paramref name="tasks"/>.</typeparam>
- <param name="tasks">The array of tasks from which to continue when one task completes.</param>
- <param name="continuationAction">The action delegate to execute when one task in the
- <paramref name="tasks"/> array completes.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- that will be assigned to the new continuation task.</param>
- <param name="continuationOptions">The <see cref="T:System.Threading.Tasks.TaskContinuationOptions">
- TaskContinuationOptions</see> value that controls the behavior of
- the created continuation <see cref="T:System.Threading.Tasks.Task">Task</see>.</param>
- <param name="scheduler">The <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- that is used to schedule the created continuation <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>The new continuation <see cref="T:System.Threading.Tasks.Task"/>.</returns>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="tasks"/> array is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="continuationAction"/> argument is null.</exception>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown when the
- <paramref name="scheduler"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array contains a null value.</exception>
- <exception cref="T:System.ArgumentException">The exception that is thrown when the
- <paramref name="tasks"/> array is empty.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The exception that is thrown when the
- <paramref name="continuationOptions"/> argument specifies an invalid TaskContinuationOptions
- value.</exception>
- <exception cref="T:System.ObjectDisposedException">The exception that is thrown when one
- of the elements in the <paramref name="tasks"/> array has been disposed.</exception>
- <exception cref="T:System.ObjectDisposedException">The provided <see cref="T:System.Threading.CancellationToken">CancellationToken</see>
- has already been disposed.
- </exception>
- <remarks>
- The NotOn* and OnlyOn* <see cref="T:System.Threading.Tasks.TaskContinuationOptions">TaskContinuationOptions</see>,
- which constrain for which <see cref="T:System.Threading.Tasks.TaskStatus">TaskStatus</see> states a continuation
- will be executed, are illegal with ContinueWhenAny.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.TaskFactory.CancellationToken">
- <summary>
- Gets the default <see cref="T:System.Threading.CancellationToken">CancellationToken</see> of this
- TaskFactory.
- </summary>
- <remarks>
- This property returns the default <see cref="P:System.Threading.Tasks.TaskFactory.CancellationToken"/> that will be assigned to all
- tasks created by this factory unless another CancellationToken value is explicitly specified
- during the call to the factory methods.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.TaskFactory.Scheduler">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> of this
- TaskFactory.
- </summary>
- <remarks>
- This property returns the default scheduler for this factory. It will be used to schedule all
- tasks unless another scheduler is explicitly specified during calls to this factory's methods.
- If null, <see cref="P:System.Threading.Tasks.TaskScheduler.Current">TaskScheduler.Current</see>
- will be used.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.TaskFactory.CreationOptions">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskCreationOptions
- </see> value of this TaskFactory.
- </summary>
- <remarks>
- This property returns the default creation options for this factory. They will be used to create all
- tasks unless other options are explicitly specified during calls to this factory's methods.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.TaskFactory.ContinuationOptions">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.TaskCreationOptions">TaskContinuationOptions
- </see> value of this TaskFactory.
- </summary>
- <remarks>
- This property returns the default continuation options for this factory. They will be used to create
- all continuation tasks unless other options are explicitly specified during calls to this factory's methods.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.TaskCompletionSource`1">
- <summary>
- Represents the producer side of a <see cref="T:System.Threading.Tasks.Task{TResult}"/> unbound to a
- delegate, providing access to the consumer side through the <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> property.
- </summary>
- <remarks>
- <para>
- It is often the case that a <see cref="T:System.Threading.Tasks.Task{TResult}"/> is desired to
- represent another asynchronous operation.
- <see cref="T:System.Threading.Tasks.TaskCompletionSource`1">TaskCompletionSource</see> is provided for this purpose. It enables
- the creation of a task that can be handed out to consumers, and those consumers can use the members
- of the task as they would any other. However, unlike most tasks, the state of a task created by a
- TaskCompletionSource is controlled explicitly by the methods on TaskCompletionSource. This enables the
- completion of the external asynchronous operation to be propagated to the underlying Task. The
- separation also ensures that consumers are not able to transition the state without access to the
- corresponding TaskCompletionSource.
- </para>
- <para>
- All members of <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/> are thread-safe
- and may be used from multiple threads concurrently.
- </para>
- </remarks>
- <typeparam name="TResult">The type of the result value assocatied with this <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/>.</typeparam>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.#ctor">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/>.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.#ctor(System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/>
- with the specified options.
- </summary>
- <remarks>
- The <see cref="T:System.Threading.Tasks.Task{TResult}"/> created
- by this instance and accessible through its <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> property
- will be instantiated using the specified <paramref name="creationOptions"/>.
- </remarks>
- <param name="creationOptions">The options to use when creating the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> represent options invalid for use
- with a <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/>.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.#ctor(System.Object)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/>
- with the specified state.
- </summary>
- <param name="state">The state to use as the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>'s AsyncState.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.#ctor(System.Object,System.Threading.Tasks.TaskCreationOptions)">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/> with
- the specified state and options.
- </summary>
- <param name="creationOptions">The options to use when creating the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <param name="state">The state to use as the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/>'s AsyncState.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- The <paramref name="creationOptions"/> represent options invalid for use
- with a <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/>.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.TrySetException(System.Exception)">
- <summary>
- Attempts to transition the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> into the
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>
- state.
- </summary>
- <param name="exception">The exception to bind to this <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>True if the operation was successful; otherwise, false.</returns>
- <remarks>This operation will return false if the
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> is already in one
- of the three final states:
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </remarks>
- <exception cref="T:System.ArgumentNullException">The <paramref name="exception"/> argument is null.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> was disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.TrySetException(System.Collections.Generic.IEnumerable{System.Exception})">
- <summary>
- Attempts to transition the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> into the
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>
- state.
- </summary>
- <param name="exceptions">The collection of exceptions to bind to this <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>True if the operation was successful; otherwise, false.</returns>
- <remarks>This operation will return false if the
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> is already in one
- of the three final states:
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </remarks>
- <exception cref="T:System.ArgumentNullException">The <paramref name="exceptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">There are one or more null elements in <paramref name="exceptions"/>.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="exceptions"/> collection is empty.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> was disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.SetException(System.Exception)">
- <summary>
- Transitions the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> into the
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>
- state.
- </summary>
- <param name="exception">The exception to bind to this <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="exception"/> argument is null.</exception>
- <exception cref="T:System.InvalidOperationException">
- The underlying <see cref="T:System.Threading.Tasks.Task{TResult}"/> is already in one
- of the three final states:
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> was disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.SetException(System.Collections.Generic.IEnumerable{System.Exception})">
- <summary>
- Transitions the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> into the
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>
- state.
- </summary>
- <param name="exceptions">The collection of exceptions to bind to this <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="exceptions"/> argument is null.</exception>
- <exception cref="T:System.ArgumentException">There are one or more null elements in <paramref name="exceptions"/>.</exception>
- <exception cref="T:System.InvalidOperationException">
- The underlying <see cref="T:System.Threading.Tasks.Task{TResult}"/> is already in one
- of the three final states:
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> was disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.TrySetResult(`0)">
- <summary>
- Attempts to transition the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> into the
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>
- state.
- </summary>
- <param name="result">The result value to bind to this <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <returns>True if the operation was successful; otherwise, false.</returns>
- <remarks>This operation will return false if the
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> is already in one
- of the three final states:
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </remarks>
- <exception cref="T:System.ObjectDisposedException">The <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> was disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.SetResult(`0)">
- <summary>
- Transitions the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> into the
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>
- state.
- </summary>
- <param name="result">The result value to bind to this <see cref="T:System.Threading.Tasks.Task{TResult}"/>.</param>
- <exception cref="T:System.InvalidOperationException">
- The underlying <see cref="T:System.Threading.Tasks.Task{TResult}"/> is already in one
- of the three final states:
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> was disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.SetCanceled">
- <summary>
- Transitions the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> into the
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>
- state.
- </summary>
- <exception cref="T:System.InvalidOperationException">
- The underlying <see cref="T:System.Threading.Tasks.Task{TResult}"/> is already in one
- of the three final states:
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> was disposed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskCompletionSource`1.TrySetCanceled">
- <summary>
- Attempts to transition the underlying
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> into the
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>
- state.
- </summary>
- <returns>True if the operation was successful; otherwise, false.</returns>
- <remarks>This operation will return false if the
- <see cref="T:System.Threading.Tasks.Task{TResult}"/> is already in one
- of the three final states:
- <see cref="F:System.Threading.Tasks.TaskStatus.RanToCompletion">RanToCompletion</see>,
- <see cref="F:System.Threading.Tasks.TaskStatus.Faulted">Faulted</see>, or
- <see cref="F:System.Threading.Tasks.TaskStatus.Canceled">Canceled</see>.
- </remarks>
- <exception cref="T:System.ObjectDisposedException">The <see cref="P:System.Threading.Tasks.TaskCompletionSource`1.Task"/> was disposed.</exception>
- </member>
- <member name="P:System.Threading.Tasks.TaskCompletionSource`1.Task">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.Task{TResult}"/> created
- by this <see cref="T:System.Threading.Tasks.TaskCompletionSource`1"/>.
- </summary>
- <remarks>
- This property enables a consumer access to the <see cref="T:System.Threading.Tasks.Task{TResult}"/> that is controlled by this instance.
- The <see cref="M:System.Threading.Tasks.TaskCompletionSource`1.SetResult(`0)"/>, <see cref="M:System.Threading.Tasks.TaskCompletionSource`1.SetException(System.Exception)"/>,
- <see cref="M:System.Threading.Tasks.TaskCompletionSource`1.SetException(System.Collections.Generic.IEnumerable{System.Exception})"/>, and <see cref="M:System.Threading.Tasks.TaskCompletionSource`1.SetCanceled"/>
- methods (and their "Try" variants) on this instance all result in the relevant state
- transitions on this underlying Task.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.TaskScheduler">
- <summary>
- Represents an abstract scheduler for tasks.
- </summary>
- <remarks>
- <para>
- <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> acts as the extension point for all
- pluggable scheduling logic. This includes mechanisms such as how to schedule a task for execution, and
- how scheduled tasks should be exposed to debuggers.
- </para>
- <para>
- All members of the abstract <see cref="T:System.Threading.Tasks.TaskScheduler"/> type are thread-safe
- and may be used from multiple threads concurrently.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.QueueTask(System.Threading.Tasks.Task)">
- <summary>
- Queues a <see cref="T:System.Threading.Tasks.Task">Task</see> to the scheduler.
- </summary>
- <remarks>
- <para>
- A class derived from <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- implements this method to accept tasks being scheduled on the scheduler.
- A typical implementation would store the task in an internal data structure, which would
- be serviced by threads that would execute those tasks at some time in the future.
- </para>
- <para>
- This method is only meant to be called by the .NET Framework and
- should not be called directly by the derived class. This is necessary
- for maintaining the consistency of the system.
- </para>
- </remarks>
- <param name="task">The <see cref="T:System.Threading.Tasks.Task">Task</see> to be queued.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="task"/> argument is null.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.TryExecuteTaskInline(System.Threading.Tasks.Task,System.Boolean)">
- <summary>
- Determines whether the provided <see cref="T:System.Threading.Tasks.Task">Task</see>
- can be executed synchronously in this call, and if it can, executes it.
- </summary>
- <remarks>
- <para>
- A class derived from <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> implements this function to
- support inline execution of a task on a thread that initiates a wait on that task object. Inline
- execution is optional, and the request may be rejected by returning false. However, better
- scalability typically results the more tasks that can be inlined, and in fact a scheduler that
- inlines too little may be prone to deadlocks. A proper implementation should ensure that a
- request executing under the policies guaranteed by the scheduler can successfully inline. For
- example, if a scheduler uses a dedicated thread to execute tasks, any inlining requests from that
- thread should succeed.
- </para>
- <para>
- If a scheduler decides to perform the inline execution, it should do so by calling to the base
- TaskScheduler's
- <see cref="M:System.Threading.Tasks.TaskScheduler.TryExecuteTask(System.Threading.Tasks.Task)">TryExecuteTask</see> method with the provided task object, propagating
- the return value. It may also be appropriate for the scheduler to remove an inlined task from its
- internal data structures if it decides to honor the inlining request. Note, however, that under
- some circumstances a scheduler may be asked to inline a task that was not previously provided to
- it with the <see cref="M:System.Threading.Tasks.TaskScheduler.QueueTask(System.Threading.Tasks.Task)"/> method.
- </para>
- <para>
- The derived scheduler is responsible for making sure that the calling thread is suitable for
- executing the given task as far as its own scheduling and execution policies are concerned.
- </para>
- </remarks>
- <param name="task">The <see cref="T:System.Threading.Tasks.Task">Task</see> to be
- executed.</param>
- <param name="taskWasPreviouslyQueued">A Boolean denoting whether or not task has previously been
- queued. If this parameter is True, then the task may have been previously queued (scheduled); if
- False, then the task is known not to have been queued, and this call is being made in order to
- execute the task inline without queueing it.</param>
- <returns>A Boolean value indicating whether the task was executed inline.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="task"/> argument is
- null.</exception>
- <exception cref="T:System.InvalidOperationException">The <paramref name="task"/> was already
- executed.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.GetScheduledTasks">
- <summary>
- Generates an enumerable of <see cref="T:System.Threading.Tasks.Task">Task</see> instances
- currently queued to the scheduler waiting to be executed.
- </summary>
- <remarks>
- <para>
- A class derived from <see cref="T:System.Threading.Tasks.TaskScheduler"/> implements this method in order to support
- integration with debuggers. This method will only be invoked by the .NET Framework when the
- debugger requests access to the data. The enumerable returned will be traversed by debugging
- utilities to access the tasks currently queued to this scheduler, enabling the debugger to
- provide a representation of this information in the user interface.
- </para>
- <para>
- It is important to note that, when this method is called, all other threads in the process will
- be frozen. Therefore, it's important to avoid synchronization with other threads that may lead to
- blocking. If synchronization is necessary, the method should prefer to throw a <see cref="T:System.NotSupportedException"/>
- than to block, which could cause a debugger to experience delays. Additionally, this method and
- the enumerable returned must not modify any globally visible state.
- </para>
- <para>
- The returned enumerable should never be null. If there are currently no queued tasks, an empty
- enumerable should be returned instead.
- </para>
- <para>
- For developers implementing a custom debugger, this method shouldn't be called directly, but
- rather this functionality should be accessed through the internal wrapper method
- GetScheduledTasksForDebugger:
- <c>internal Task[] GetScheduledTasksForDebugger()</c>. This method returns an array of tasks,
- rather than an enumerable. In order to retrieve a list of active schedulers, a debugger may use
- another internal method: <c>internal static TaskScheduler[] GetTaskSchedulersForDebugger()</c>.
- This static method returns an array of all active TaskScheduler instances.
- GetScheduledTasksForDebugger then may be used on each of these scheduler instances to retrieve
- the list of scheduled tasks for each.
- </para>
- </remarks>
- <returns>An enumerable that allows traversal of tasks currently queued to this scheduler.
- </returns>
- <exception cref="T:System.NotSupportedException">
- This scheduler is unable to generate a list of queued tasks at this time.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.GetThreadStatics">
- <summary>
- Retrieves some thread static state that can be cached and passed to multiple
- TryRunInline calls, avoiding superflous TLS fetches.
- </summary>
- <returns>A bag of TLS state (or null if none exists).</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.TryRunInline(System.Threading.Tasks.Task,System.Boolean,System.Object)">
- <summary>
- Attempts to execute the target task synchronously.
- </summary>
- <param name="task">The task to run.</param>
- <param name="taskWasPreviouslyQueued">True if the task may have been previously queued,
- false if the task was absolutely not previously queued.</param>
- <param name="threadStatics">The state retrieved from GetThreadStatics</param>
- <returns>True if it ran, false otherwise.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.TryDequeue(System.Threading.Tasks.Task)">
- <summary>
- Attempts to dequeue a <see cref="T:System.Threading.Tasks.Task">Task</see> that was previously queued to
- this scheduler.
- </summary>
- <param name="task">The <see cref="T:System.Threading.Tasks.Task">Task</see> to be dequeued.</param>
- <returns>A Boolean denoting whether the <paramref name="task"/> argument was successfully dequeued.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="task"/> argument is null.</exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.NotifyWorkItemProgress">
- <summary>
- Notifies the scheduler that a work item has made progress.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.#ctor">
- <summary>
- Initializes the <see cref="T:System.Threading.Tasks.TaskScheduler"/>.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.Finalize">
- <summary>
- Frees all resources associated with this scheduler.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.FromCurrentSynchronizationContext">
- <summary>
- Creates a <see cref="T:System.Threading.Tasks.TaskScheduler"/>
- associated with the current <see cref="T:System.Threading.SynchronizationContext"/>.
- </summary>
- <remarks>
- All <see cref="T:System.Threading.Tasks.Task">Task</see> instances queued to
- the returned scheduler will be executed through a call to the
- <see cref="M:System.Threading.SynchronizationContext.Post(System.Threading.SendOrPostCallback,System.Object)">Post</see> method
- on that context.
- </remarks>
- <returns>
- A <see cref="T:System.Threading.Tasks.TaskScheduler"/> associated with
- the current <see cref="T:System.Threading.SynchronizationContext">SynchronizationContext</see>, as
- determined by <see cref="P:System.Threading.SynchronizationContext.Current">SynchronizationContext.Current</see>.
- </returns>
- <exception cref="T:System.InvalidOperationException">
- The current SynchronizationContext may not be used as a TaskScheduler.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.TryExecuteTask(System.Threading.Tasks.Task)">
- <summary>
- Attempts to execute the provided <see cref="T:System.Threading.Tasks.Task">Task</see>
- on this scheduler.
- </summary>
- <remarks>
- <para>
- Scheduler implementations are provided with <see cref="T:System.Threading.Tasks.Task">Task</see>
- instances to be executed through either the <see cref="M:System.Threading.Tasks.TaskScheduler.QueueTask(System.Threading.Tasks.Task)"/> method or the
- <see cref="M:System.Threading.Tasks.TaskScheduler.TryExecuteTaskInline(System.Threading.Tasks.Task,System.Boolean)"/> method. When the scheduler deems it appropriate to run the
- provided task, <see cref="M:System.Threading.Tasks.TaskScheduler.TryExecuteTask(System.Threading.Tasks.Task)"/> should be used to do so. TryExecuteTask handles all
- aspects of executing a task, including action invocation, exception handling, state management,
- and lifecycle control.
- </para>
- <para>
- <see cref="M:System.Threading.Tasks.TaskScheduler.TryExecuteTask(System.Threading.Tasks.Task)"/> must only be used for tasks provided to this scheduler by the .NET
- Framework infrastructure. It should not be used to execute arbitrary tasks obtained through
- custom mechanisms.
- </para>
- </remarks>
- <param name="task">
- A <see cref="T:System.Threading.Tasks.Task">Task</see> object to be executed.</param>
- <exception cref="T:System.InvalidOperationException">
- The <paramref name="task"/> is not associated with this scheduler.
- </exception>
- <returns>A Boolean that is true if <paramref name="task"/> was successfully executed, false if it
- was not. A common reason for execution failure is that the task had previously been executed or
- is in the process of being executed by another thread.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.GetScheduledTasksForDebugger">
- <summary>
- Provides an array of all queued <see cref="T:System.Threading.Tasks.Task">Task</see> instances
- for the debugger.
- </summary>
- <remarks>
- The returned array is populated through a call to <see cref="M:System.Threading.Tasks.TaskScheduler.GetScheduledTasks"/>.
- Note that this function is only meant to be invoked by a debugger remotely.
- It should not be called by any other codepaths.
- </remarks>
- <returns>An array of <see cref="T:System.Threading.Tasks.Task">Task</see> instances.</returns>
- <exception cref="T:System.NotSupportedException">
- This scheduler is unable to generate a list of queued tasks at this time.
- </exception>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.GetTaskSchedulersForDebugger">
- <summary>
- Provides an array of all active <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- instances for the debugger.
- </summary>
- <remarks>
- This function is only meant to be invoked by a debugger remotely.
- It should not be called by any other codepaths.
- </remarks>
- <returns>An array of <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> instances.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.RegisterTaskScheduler(System.Threading.Tasks.TaskScheduler)">
- <summary>
- Registers a new TaskScheduler instance in the global collection of schedulers.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskScheduler.UnregisterTaskScheduler(System.Threading.Tasks.TaskScheduler)">
- <summary>
- Removes a TaskScheduler instance from the global collection of schedulers.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.TaskScheduler.MaximumConcurrencyLevel">
- <summary>
- Indicates the maximum concurrency level this
- <see cref="T:System.Threading.Tasks.TaskScheduler"/> is able to support.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.TaskScheduler.RequiresAtomicStartTransition">
- <summary>
- Indicates whether this is a custom scheduler, in which case the safe code paths will be taken upon task entry
- using a CAS to transition from queued state to executing.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.TaskScheduler.Default">
- <summary>
- Gets the default <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see> instance.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.TaskScheduler.Current">
- <summary>
- Gets the <see cref="T:System.Threading.Tasks.TaskScheduler">TaskScheduler</see>
- associated with the currently executing task.
- </summary>
- <remarks>
- When not called from within a task, <see cref="P:System.Threading.Tasks.TaskScheduler.Current"/> will return the <see cref="P:System.Threading.Tasks.TaskScheduler.Default"/> scheduler.
- </remarks>
- </member>
- <member name="P:System.Threading.Tasks.TaskScheduler.Id">
- <summary>
- Gets the unique ID for this <see cref="T:System.Threading.Tasks.TaskScheduler"/>.
- </summary>
- </member>
- <member name="E:System.Threading.Tasks.TaskScheduler.UnobservedTaskException">
- <summary>
- Occurs when a faulted <see cref="T:System.Threading.Tasks.Task"/>'s unobserved exception is about to trigger exception escalation
- policy, which, by default, would terminate the process.
- </summary>
- <remarks>
- This AppDomain-wide event provides a mechanism to prevent exception
- escalation policy (which, by default, terminates the process) from triggering.
- Each handler is passed a <see cref="T:System.Threading.Tasks.UnobservedTaskExceptionEventArgs"/>
- instance, which may be used to examine the exception and to mark it as observed.
- </remarks>
- </member>
- <member name="T:System.Threading.Tasks.TaskScheduler.SystemThreadingTasks_TaskSchedulerDebugView">
- <summary>
- Nested class that provides debugger view for TaskScheduler
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.SynchronizationContextTaskScheduler">
- <summary>
- A TaskScheduler implementation that executes all tasks queued to it through a call to
- <see cref="M:System.Threading.SynchronizationContext.Post(System.Threading.SendOrPostCallback,System.Object)"/> on the <see cref="T:System.Threading.SynchronizationContext"/>
- that its associated with. The default constructor for this class binds to the current <see cref="T:System.Threading.SynchronizationContext"/>
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.SynchronizationContextTaskScheduler.#ctor">
- <summary>
- Constructs a SynchronizationContextTaskScheduler associated with <see cref="T:System.Threading.SynchronizationContext.Current"/>
- </summary>
- <exception cref="T:System.InvalidOperationException">This constructor expects <see cref="T:System.Threading.SynchronizationContext.Current"/> to be set.</exception>
- </member>
- <member name="M:System.Threading.Tasks.SynchronizationContextTaskScheduler.QueueTask(System.Threading.Tasks.Task)">
- <summary>
- Implemetation of <see cref="T:System.Threading.Tasks.TaskScheduler.QueueTask"/> for this scheduler class.
-
- Simply posts the tasks to be executed on the associated <see cref="T:System.Threading.SynchronizationContext"/>.
- </summary>
- <param name="task"></param>
- </member>
- <member name="M:System.Threading.Tasks.SynchronizationContextTaskScheduler.TryExecuteTaskInline(System.Threading.Tasks.Task,System.Boolean)">
- <summary>
- Implementation of <see cref="T:System.Threading.Tasks.TaskScheduler.TryExecuteTaskInline"/> for this scheduler class.
-
- The task will be executed inline only if the call happens within
- the associated <see cref="T:System.Threading.SynchronizationContext"/>.
- </summary>
- <param name="task"></param>
- <param name="taskWasPreviouslyQueued"></param>
- </member>
- <member name="P:System.Threading.Tasks.SynchronizationContextTaskScheduler.MaximumConcurrencyLevel">
- <summary>
- Implementes the <see cref="T:System.Threading.Tasks.TaskScheduler.MaximumConcurrencyLevel"/> property for
- this scheduler class.
-
- By default it returns 1, because a <see cref="T:System.Threading.SynchronizationContext"/> based
- scheduler only supports execution on a single thread.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.UnobservedTaskExceptionEventArgs">
- <summary>
- Provides data for the event that is raised when a faulted <see cref="T:System.Threading.Tasks.Task"/>'s
- exception goes unobserved.
- </summary>
- <remarks>
- The Exception property is used to examine the exception without marking it
- as observed, whereas the <see cref="M:System.Threading.Tasks.UnobservedTaskExceptionEventArgs.SetObserved"/> method is used to mark the exception
- as observed. Marking the exception as observed prevents it from triggering exception escalation policy
- which, by default, terminates the process.
- </remarks>
- </member>
- <member name="M:System.Threading.Tasks.UnobservedTaskExceptionEventArgs.#ctor(System.AggregateException)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.UnobservedTaskExceptionEventArgs"/> class
- with the unobserved exception.
- </summary>
- <param name="exception">The Exception that has gone unobserved.</param>
- </member>
- <member name="M:System.Threading.Tasks.UnobservedTaskExceptionEventArgs.SetObserved">
- <summary>
- Marks the <see cref="P:System.Threading.Tasks.UnobservedTaskExceptionEventArgs.Exception"/> as "observed," thus preventing it
- from triggering exception escalation policy which, by default, terminates the process.
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.UnobservedTaskExceptionEventArgs.Observed">
- <summary>
- Gets whether this exception has been marked as "observed."
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.UnobservedTaskExceptionEventArgs.Exception">
- <summary>
- The Exception that went unobserved.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.ThreadPoolTaskScheduler">
- <summary>
- An implementation of TaskScheduler that uses the ThreadPool scheduler
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.ThreadPoolTaskScheduler.#ctor">
- <summary>
- Constructs a new ThreadPool task scheduler object
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.ThreadPoolTaskScheduler.QueueTask(System.Threading.Tasks.Task)">
- <summary>
- Schedules a task to the ThreadPool.
- </summary>
- <param name="task">The task to schedule.</param>
- </member>
- <member name="M:System.Threading.Tasks.ThreadPoolTaskScheduler.TryExecuteTaskInline(System.Threading.Tasks.Task,System.Boolean)">
- <summary>
- This internal function will do this:
- (1) If the task had previously been queued, attempt to pop it and return false if that fails.
- (2) Propagate the return value from Task.ExecuteEntry() back to the caller.
-
- IMPORTANT NOTE: TryExecuteTaskInline will NOT throw task exceptions itself. Any wait code path using this function needs
- to account for exceptions that need to be propagated, and throw themselves accordingly.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.ThreadPoolTaskScheduler.NotifyWorkItemProgress">
- <summary>
- Notifies the scheduler that work is progressing (no-op).
- </summary>
- </member>
- <member name="P:System.Threading.Tasks.ThreadPoolTaskScheduler.RequiresAtomicStartTransition">
- <summary>
- This is the only scheduler that returns false for this property, indicating that the task entry codepath is unsafe (CAS free)
- since we know that the underlying scheduler already takes care of atomic transitions from queued to non-queued.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.TaskSchedulerException">
- <summary>
- Represents an exception used to communicate an invalid operation by a
- <see cref="T:System.Threading.Tasks.TaskScheduler"/>.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskSchedulerException.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskSchedulerException"/> class.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskSchedulerException.#ctor(System.String)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskSchedulerException"/>
- class with a specified error message.
- </summary>
- <param name="message">The error message that explains the reason for the exception.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskSchedulerException.#ctor(System.Exception)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskSchedulerException"/>
- class using the default error message and a reference to the inner exception that is the cause of
- this exception.
- </summary>
- <param name="innerException">The exception that is the cause of the current exception.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskSchedulerException.#ctor(System.String,System.Exception)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskSchedulerException"/>
- class with a specified error message and a reference to the inner exception that is the cause of
- this exception.
- </summary>
- <param name="message">The error message that explains the reason for the exception.</param>
- <param name="innerException">The exception that is the cause of the current exception.</param>
- </member>
- <member name="M:System.Threading.Tasks.TaskSchedulerException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Tasks.TaskSchedulerException"/>
- class with serialized data.
- </summary>
- <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds
- the serialized object data about the exception being thrown.</param>
- <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that
- contains contextual information about the source or destination. </param>
- </member>
- <member name="T:System.Threading.BarrierPostPhaseException">
- <summary>
- The exception that is thrown when the post-phase action of a <see cref="T:System.Threading.Barrier"/> fails.
- </summary>
- </member>
- <member name="M:System.Threading.BarrierPostPhaseException.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.BarrierPostPhaseException"/> class.
- </summary>
- </member>
- <member name="M:System.Threading.BarrierPostPhaseException.#ctor(System.Exception)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.BarrierPostPhaseException"/> class with the specified inner exception.
- </summary>
- <param name="innerException">The exception that is the cause of the current exception.</param>
- </member>
- <member name="M:System.Threading.BarrierPostPhaseException.#ctor(System.String)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.BarrierPostPhaseException"/> class with a specified error message.
- </summary>
- <param name="message">A string that describes the exception.</param>
- </member>
- <member name="M:System.Threading.BarrierPostPhaseException.#ctor(System.String,System.Exception)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.BarrierPostPhaseException"/> class with a specified error message and inner exception.
- </summary>
- <param name="message">A string that describes the exception.</param>
- <param name="innerException">The exception that is the cause of the current exception.</param>
- </member>
- <member name="M:System.Threading.BarrierPostPhaseException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.BarrierPostPhaseException"/> class with serialized data.
- </summary>
- <param name="info">The object that holds the serialized object data.</param>
- <param name="context">An object that describes the source or destination of the serialized data.</param>
- </member>
- <member name="T:System.Threading.Barrier">
- <summary>
- Enables multiple tasks to cooperatively work on an algorithm in parallel through multiple phases.
- </summary>
- <remarks>
- <para>
- A group of tasks cooperate by moving through a series of phases, where each in the group signals it
- has arrived at the <see cref="T:System.Threading.Barrier"/> in a given phase and implicitly waits for all others to
- arrive. The same <see cref="T:System.Threading.Barrier"/> can be used for multiple phases.
- </para>
- <para>
- All public and protected members of <see cref="T:System.Threading.Barrier"/> are thread-safe and may be used
- concurrently from multiple threads, with the exception of Dispose, which
- must only be used when all other operations on the <see cref="T:System.Threading.Barrier"/> have
- completed.
- </para>
- </remarks>
- </member>
- <member name="M:System.Threading.Barrier.#ctor(System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Barrier"/> class.
- </summary>
- <param name="participantCount">The number of participating threads.</param>
- <exception cref="T:System.ArgumentOutOfRangeException"> <paramref name="participantCount"/> is less than 0
- or greater than <see cref="T:System.Int32.MaxValue"/>.</exception>
- </member>
- <member name="M:System.Threading.Barrier.#ctor(System.Int32,System.Action{System.Threading.Barrier})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Threading.Barrier"/> class.
- </summary>
- <param name="participantCount">The number of participating threads.</param>
- <param name="postPhaseAction">The <see cref="T:System.Action`1"/> to be executed after each
- phase.</param>
- <exception cref="T:System.ArgumentOutOfRangeException"> <paramref name="participantCount"/> is less than 0
- or greater than <see cref="T:System.Int32.MaxValue"/>.</exception>
- <remarks>
- The <paramref name="postPhaseAction"/> delegate will be executed after
- all participants have arrived at the barrier in one phase. The participants
- will not be released to the next phase until the postPhaseAction delegate
- has completed execution.
- </remarks>
- </member>
- <member name="M:System.Threading.Barrier.GetCurrentTotal(System.Int32,System.Int32@,System.Int32@,System.Boolean@)">
- <summary>
- Extract the three variables current, total and sense from a given big variable
- </summary>
- <param name="currentTotal">The integer variable that contains the other three variables</param>
- <param name="current">The current cparticipant count</param>
- <param name="total">The total participants count</param>
- <param name="sense">The sense flag</param>
- </member>
- <member name="M:System.Threading.Barrier.SetCurrentTotal(System.Int32,System.Int32,System.Int32,System.Boolean)">
- <summary>
- Write the three variables current. total and the sense to the m_currentTotal
- </summary>
- <param name="currentTotal">The old current total to compare</param>
- <param name="current">The current cparticipant count</param>
- <param name="total">The total participants count</param>
- <param name="sense">The sense flag</param>
- <returns>True if the CAS succeeded, false otherwise</returns>
- </member>
- <member name="M:System.Threading.Barrier.AddParticipant">
- <summary>
- Notifies the <see cref="T:System.Threading.Barrier"/> that there will be an additional participant.
- </summary>
- <returns>The phase number of the barrier in which the new participants will first
- participate.</returns>
- <exception cref="T:System.InvalidOperationException">
- Adding a participant would cause the barrier's participant count to
- exceed <see cref="T:System.Int16.MaxValue"/>.
- </exception>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.AddParticipants(System.Int32)">
- <summary>
- Notifies the <see cref="T:System.Threading.Barrier"/> that there will be additional participants.
- </summary>
- <param name="participantCount">The number of additional participants to add to the
- barrier.</param>
- <returns>The phase number of the barrier in which the new participants will first
- participate.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="participantCount"/> is less than
- 0.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Adding <paramref name="participantCount"/> participants would cause the
- barrier's participant count to exceed <see cref="T:System.Int16.MaxValue"/>.</exception>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.RemoveParticipant">
- <summary>
- Notifies the <see cref="T:System.Threading.Barrier"/> that there will be one less participant.
- </summary>
- <exception cref="T:System.InvalidOperationException">The barrier already has 0
- participants.</exception>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.RemoveParticipants(System.Int32)">
- <summary>
- Notifies the <see cref="T:System.Threading.Barrier"/> that there will be fewer participants.
- </summary>
- <param name="participantCount">The number of additional participants to remove from the barrier.</param>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="participantCount"/> is less than
- 0.</exception>
- <exception cref="T:System.InvalidOperationException">The barrier already has 0 participants.</exception>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.SignalAndWait">
- <summary>
- Signals that a participant has reached the <see cref="T:System.Threading.Barrier"/> and waits for all other
- participants to reach the barrier as well.
- </summary>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action, the barrier currently has 0 participants,
- or the barrier is being used by more threads than are registered as participants.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.SignalAndWait(System.Threading.CancellationToken)">
- <summary>
- Signals that a participant has reached the <see cref="T:System.Threading.Barrier"/> and waits for all other
- participants to reach the barrier, while observing a <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action, the barrier currently has 0 participants,
- or the barrier is being used by more threads than are registered as participants.
- </exception>
- <exception cref="T:System.OperationCanceledException"><paramref name="cancellationToken"/> has been
- canceled.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.SignalAndWait(System.TimeSpan)">
- <summary>
- Signals that a participant has reached the <see cref="T:System.Threading.Barrier"/> and waits for all other
- participants to reach the barrier as well, using a
- <see cref="T:System.TimeSpan"/> to measure the time interval.
- </summary>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of
- milliseconds to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to
- wait indefinitely.</param>
- <returns>true if all other participants reached the barrier; otherwise, false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/>is a negative number
- other than -1 milliseconds, which represents an infinite time-out, or it is greater than
- <see cref="T:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action, the barrier currently has 0 participants,
- or the barrier is being used by more threads than are registered as participants.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.SignalAndWait(System.TimeSpan,System.Threading.CancellationToken)">
- <summary>
- Signals that a participant has reached the <see cref="T:System.Threading.Barrier"/> and waits for all other
- participants to reach the barrier as well, using a
- <see cref="T:System.TimeSpan"/> to measure the time interval, while observing a <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of
- milliseconds to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to
- wait indefinitely.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <returns>true if all other participants reached the barrier; otherwise, false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/>is a negative number
- other than -1 milliseconds, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action, the barrier currently has 0 participants,
- or the barrier is being used by more threads than are registered as participants.
- </exception>
- <exception cref="T:System.OperationCanceledException"><paramref name="cancellationToken"/> has been
- canceled.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.SignalAndWait(System.Int32)">
- <summary>
- Signals that a participant has reached the <see cref="T:System.Threading.Barrier"/> and waits for all other
- participants to reach the barrier as well, using a
- 32-bit signed integer to measure the time interval.
- </summary>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/>(-1) to wait indefinitely.</param>
- <returns>true if all other participants reached the barrier; otherwise, false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action, the barrier currently has 0 participants,
- or the barrier is being used by more threads than are registered as participants.
- </exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.SignalAndWait(System.Int32,System.Threading.CancellationToken)">
- <summary>
- Signals that a participant has reached the barrier and waits for all other participants to reach
- the barrier as well, using a
- 32-bit signed integer to measure the time interval, while observing a <see cref="T:System.Threading.CancellationToken"/>.
- </summary>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/>(-1) to wait indefinitely.</param>
- <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken"/> to
- observe.</param>
- <returns>true if all other participants reached the barrier; otherwise, false.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action, the barrier currently has 0 participants,
- or the barrier is being used by more threads than are registered as participants.
- </exception>
- <exception cref="T:System.OperationCanceledException"><paramref name="cancellationToken"/> has been
- canceled.</exception>
- <exception cref="T:System.ObjectDisposedException">The current instance has already been
- disposed.</exception>
- </member>
- <member name="M:System.Threading.Barrier.FinishPhase(System.Boolean)">
- <summary>
- Finish the phase by invoking the post phase action, and setting the event, this must be called by the
- last arrival thread
- </summary>
- <param name="observedSense">The current phase sense</param>
- </member>
- <member name="M:System.Threading.Barrier.SetResetEvents(System.Boolean)">
- <summary>
- Sets the current phase event and reset the next phase event
- </summary>
- <param name="observedSense">The current phase sense</param>
- </member>
- <member name="M:System.Threading.Barrier.Dispose">
- <summary>
- Releases all resources used by the current instance of <see cref="T:System.Threading.Barrier"/>.
- </summary>
- <exception cref="T:System.InvalidOperationException">
- The method was invoked from within a post-phase action.
- </exception>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.Barrier"/>, Dispose is not thread-safe and may not be
- used concurrently with other members of this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.Barrier.Dispose(System.Boolean)">
- <summary>
- When overridden in a derived class, releases the unmanaged resources used by the
- <see cref="T:System.Threading.Barrier"/>, and optionally releases the managed resources.
- </summary>
- <param name="disposing">true to release both managed and unmanaged resources; false to release
- only unmanaged resources.</param>
- <remarks>
- Unlike most of the members of <see cref="T:System.Threading.Barrier"/>, Dispose is not thread-safe and may not be
- used concurrently with other members of this instance.
- </remarks>
- </member>
- <member name="M:System.Threading.Barrier.ThrowIfDisposed">
- <summary>
- Throw ObjectDisposedException if the barrier is disposed
- </summary>
- </member>
- <member name="P:System.Threading.Barrier.ParticipantsRemaining">
- <summary>
- Gets the number of participants in the barrier that haven’t yet signaled
- in the current phase.
- </summary>
- <remarks>
- This could be 0 during a post-phase action delegate execution or if the
- ParticipantCount is 0.
- </remarks>
- </member>
- <member name="P:System.Threading.Barrier.ParticipantCount">
- <summary>
- Gets the total number of participants in the barrier.
- </summary>
- </member>
- <member name="P:System.Threading.Barrier.CurrentPhaseNumber">
- <summary>
- Gets the number of the barrier's current phase.
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.BlockingCollection`1">
- <summary>
- Provides blocking and bounding capabilities for thread-safe collections that
- implement <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/>.
- </summary>
- <remarks>
- <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/> represents a collection
- that allows for thread-safe adding and removing of data.
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> is used as a wrapper
- for an <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/> instance, allowing
- removal attempts from the collection to block until data is available to be removed. Similarly,
- a <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> can be created to enforce
- an upper-bound on the number of data elements allowed in the
- <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/>; addition attempts to the
- collection may then block until space is available to store the added items. In this manner,
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> is similar to a traditional
- blocking queue data structure, except that the underlying data storage mechanism is abstracted
- away as an <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/>.
- </remarks>
- <typeparam name="T">Specifies the type of elements in the collection.</typeparam>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.#ctor">
- <summary>Initializes a new instance of the
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>
- class without an upper-bound.
- </summary>
- <remarks>
- The default underlying collection is a <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1">ConcurrentQueue<T></see>.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.#ctor(System.Int32)">
- <summary>Initializes a new instance of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>
- class with the specified upper-bound.
- </summary>
- <param name="boundedCapacity">The bounded size of the collection.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="boundedCapacity"/> is
- not a positive value.</exception>
- <remarks>
- The default underlying collection is a <see cref="T:System.Collections.Concurrent.ConcurrentQueue`1">ConcurrentQueue<T></see>.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.#ctor(System.Collections.Concurrent.IProducerConsumerCollection{`0},System.Int32)">
- <summary>Initializes a new instance of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>
- class with the specified upper-bound and using the provided
- <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/> as its underlying data store.</summary>
- <param name="collection">The collection to use as the underlying data store.</param>
- <param name="boundedCapacity">The bounded size of the collection.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collection"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="boundedCapacity"/> is not a positive value.</exception>
- <exception cref="T:System.ArgumentException">The supplied <paramref name="collection"/> contains more values
- than is permitted by <paramref name="boundedCapacity"/>.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.#ctor(System.Collections.Concurrent.IProducerConsumerCollection{`0})">
- <summary>Initializes a new instance of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>
- class without an upper-bound and using the provided
- <see cref="T:System.Collections.Concurrent.IProducerConsumerCollection{T}"/> as its underlying data store.</summary>
- <param name="collection">The collection to use as the underlying data store.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collection"/> argument is
- null.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.Initialize(System.Collections.Concurrent.IProducerConsumerCollection{`0},System.Int32,System.Int32)">
- <summary>Initializes the BlockingCollection instance.</summary>
- <param name="collection">The collection to use as the underlying data store.</param>
- <param name="boundedCapacity">The bounded size of the collection.</param>
- <param name="collectionCount">The number of items currently in the underlying collection.</param>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.Add(`0)">
- <summary>
- Adds the item to the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- </summary>
- <param name="item">The item to be added to the collection. The value can be a null reference.</param>
- <exception cref="T:System.InvalidOperationException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been marked
- as complete with regards to additions.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection didn't accept the item.</exception>
- <remarks>
- If a bounded capacity was specified when this instance of
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> was initialized,
- a call to Add may block until space is available to store the provided item.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.Add(`0,System.Threading.CancellationToken)">
- <summary>
- Adds the item to the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- A <see cref="T:System.OperationCanceledException"/> is thrown if the <see cref="T:System.Threading.CancellationToken"/> is
- canceled.
- </summary>
- <param name="item">The item to be added to the collection. The value can be a null reference.</param>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.InvalidOperationException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been marked
- as complete with regards to additions.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection didn't accept the item.</exception>
- <remarks>
- If a bounded capacity was specified when this instance of
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> was initialized,
- a call to <see cref="M:System.Collections.Concurrent.BlockingCollection`1.Add(`0,System.Threading.CancellationToken)"/> may block until space is available to store the provided item.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAdd(`0)">
- <summary>
- Attempts to add the specified item to the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- </summary>
- <param name="item">The item to be added to the collection.</param>
- <returns>true if the <paramref name="item"/> could be added; otherwise, false.</returns>
- <exception cref="T:System.InvalidOperationException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been marked
- as complete with regards to additions.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection didn't accept the item.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAdd(`0,System.TimeSpan)">
- <summary>
- Attempts to add the specified item to the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- </summary>
- <param name="item">The item to be added to the collection.</param>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds
- to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <returns>true if the <paramref name="item"/> could be added to the collection within
- the alloted time; otherwise, false.</returns>
- <exception cref="T:System.InvalidOperationException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been marked
- as complete with regards to additions.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative number
- other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than
- <see cref="F:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection didn't accept the item.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAdd(`0,System.Int32)">
- <summary>
- Attempts to add the specified item to the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- </summary>
- <param name="item">The item to be added to the collection.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param>
- <returns>true if the <paramref name="item"/> could be added to the collection within
- the alloted time; otherwise, false.</returns>
- <exception cref="T:System.InvalidOperationException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been marked
- as complete with regards to additions.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection didn't accept the item.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAdd(`0,System.Int32,System.Threading.CancellationToken)">
- <summary>
- Attempts to add the specified item to the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- A <see cref="T:System.OperationCanceledException"/> is thrown if the <see cref="T:System.Threading.CancellationToken"/> is
- canceled.
- </summary>
- <param name="item">The item to be added to the collection.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <returns>true if the <paramref name="item"/> could be added to the collection within
- the alloted time; otherwise, false.</returns>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.InvalidOperationException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been marked
- as complete with regards to additions.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection didn't accept the item.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAddWithNoTimeValidation(`0,System.Int32,System.Threading.CancellationToken)">
- <summary>Adds an item into the underlying data store using its IProducerConsumerCollection<T>.Add
- method. If a bounded capacity was specified and the collection was full,
- this method will wait for, at most, the timeout period trying to add the item.
- If the timeout period was exhaused before successfully adding the item this method will
- return false.</summary>
- <param name="item">The item to be added to the collection.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait for the collection to accept the item,
- or Timeout.Infinite to wait indefinitely.</param>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <returns>False if the collection remained full till the timeout period was exhausted.True otherwise.</returns>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.InvalidOperationException">the collection has already been marked
- as complete with regards to additions.</exception>
- <exception cref="T:System.ObjectDisposedException">If the collection has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection didn't accept the item.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.Take">
- <summary>Takes an item from the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.</summary>
- <returns>The item removed from the collection.</returns>
- <exception cref="T:System.OperationCanceledException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> is empty and has been marked
- as complete with regards to additions.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection was modified
- outside of this <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- <remarks>A call to <see cref="M:System.Collections.Concurrent.BlockingCollection`1.Take"/> may block until an item is available to be removed.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.Take(System.Threading.CancellationToken)">
- <summary>Takes an item from the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.</summary>
- <returns>The item removed from the collection.</returns>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is
- canceled or the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> is empty and has been marked
- as complete with regards to additions.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection was modified
- outside of this <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- <remarks>A call to <see cref="M:System.Collections.Concurrent.BlockingCollection`1.Take(System.Threading.CancellationToken)"/> may block until an item is available to be removed.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryTake(`0@)">
- <summary>
- Attempts to remove an item from the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- </summary>
- <param name="item">The item removed from the collection.</param>
- <returns>true if an item could be removed; otherwise, false.</returns>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection was modified
- outside of this <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryTake(`0@,System.TimeSpan)">
- <summary>
- Attempts to remove an item from the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- </summary>
- <param name="item">The item removed from the collection.</param>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds
- to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <returns>true if an item could be removed from the collection within
- the alloted time; otherwise, false.</returns>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative number
- other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than
- <see cref="F:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection was modified
- outside of this <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryTake(`0@,System.Int32)">
- <summary>
- Attempts to remove an item from the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- </summary>
- <param name="item">The item removed from the collection.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param>
- <returns>true if an item could be removed from the collection within
- the alloted time; otherwise, false.</returns>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection was modified
- outside of this <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryTake(`0@,System.Int32,System.Threading.CancellationToken)">
- <summary>
- Attempts to remove an item from the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.
- A <see cref="T:System.OperationCanceledException"/> is thrown if the <see cref="T:System.Threading.CancellationToken"/> is
- canceled.
- </summary>
- <param name="item">The item removed from the collection.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <returns>true if an item could be removed from the collection within
- the alloted time; otherwise, false.</returns>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">The underlying collection was modified
- outside of this <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryTakeWithNoTimeValidation(`0@,System.Int32,System.Threading.CancellationToken,System.Threading.CancellationTokenSource)">
- <summary>Takes an item from the underlying data store using its IProducerConsumerCollection<T>.Take
- method. If the collection was empty, this method will wait for, at most, the timeout period (if AddingIsCompleted is false)
- trying to remove an item. If the timeout period was exhaused before successfully removing an item
- this method will return false.
- A <see cref="T:System.OperationCanceledException"/> is thrown if the <see cref="T:System.Threading.CancellationToken"/> is
- canceled.
- </summary>
- <param name="item">The item removed from the collection.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait for the collection to have an item available
- for removal, or Timeout.Infinite to wait indefinitely.</param>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <param name="combinedTokenSource">A combined cancellation token if created, it is only created by GetConsumingEnumerable to avoid creating the linked token
- multiple times.</param>
- <returns>False if the collection remained empty till the timeout period was exhausted. True otherwise.</returns>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.ObjectDisposedException">If the collection has been disposed.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.AddToAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0)">
- <summary>
- Adds the specified item to any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item to be added to one of the collections.</param>
- <returns>The index of the collection in the <paramref name="collections"/> array to which the item was added.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element, or at least one of collections has been
- marked as complete for adding.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">At least one underlying collection didn't accept the item.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- <remarks>
- If a bounded capacity was specified when all of the
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances were initialized,
- a call to AddToAny may block until space is available in one of the collections
- to store the provided item.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.AddToAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0,System.Threading.CancellationToken)">
- <summary>
- Adds the specified item to any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- A <see cref="T:System.OperationCanceledException"/> is thrown if the <see cref="T:System.Threading.CancellationToken"/> is
- canceled.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item to be added to one of the collections.</param>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <returns>The index of the collection in the <paramref name="collections"/> array to which the item was added.</returns>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element, or at least one of collections has been
- marked as complete for adding.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">At least one underlying collection didn't accept the item.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- <remarks>
- If a bounded capacity was specified when all of the
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances were initialized,
- a call to AddToAny may block until space is available in one of the collections
- to store the provided item.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAddToAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0)">
- <summary>
- Attempts to add the specified item to any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item to be added to one of the collections.</param>
- <returns>The index of the collection in the <paramref name="collections"/>
- array to which the item was added, or -1 if the item could not be added.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element, or at least one of collections has been
- marked as complete for adding.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">At least one underlying collection didn't accept the item.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAddToAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0,System.TimeSpan)">
- <summary>
- Attempts to add the specified item to any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item to be added to one of the collections.</param>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds
- to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <returns>The index of the collection in the <paramref name="collections"/>
- array to which the item was added, or -1 if the item could not be added.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element, or at least one of collections has been
- marked as complete for adding.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative number
- other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than
- <see cref="F:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.InvalidOperationException">At least one underlying collection didn't accept the item.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAddToAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0,System.Int32)">
- <summary>
- Attempts to add the specified item to any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item to be added to one of the collections.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param> /// <returns>The index of the collection in the <paramref name="collections"/>
- array to which the item was added, or -1 if the item could not be added.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element, or at least one of collections has been
- marked as complete for adding.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">At least one underlying collection didn't accept the item.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAddToAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0,System.Int32,System.Threading.CancellationToken)">
- <summary>
- Attempts to add the specified item to any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- A <see cref="T:System.OperationCanceledException"/> is thrown if the <see cref="T:System.Threading.CancellationToken"/> is
- canceled.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item to be added to one of the collections.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param> /// <returns>The index of the collection in the <paramref name="collections"/>
- array to which the item was added, or -1 if the item could not be added.</returns>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element, or at least one of collections has been
- marked as complete for adding.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">At least one underlying collection didn't accept the item.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryAddTakeAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0@,System.Int32,System.Collections.Concurrent.BlockingCollection{`0}.OperationMode,System.Threading.CancellationToken)">
- <summary>Adds/Takes an item to/from anyone of the specified collections.
- A <see cref="T:System.OperationCanceledException"/> is thrown if the <see cref="T:System.Threading.CancellationToken"/> is
- canceled.
- </summary>
- <param name="collections">The collections into which the item can be added.</param>
- <param name="item">The item to be added or the item removed and returned to the caller.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait for a collection to accept the
- operation, or -1 to wait indefinitely.</param>
- <param name="operationMode">Indicates whether this method is called to Add or Take.</param>
- <param name="externalCancellationToken">A cancellation token to observe.</param>
- <returns>The index into collections for the collection which accepted the
- adding/removal of the item; -1 if the item could not be added/removed.</returns>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.ArgumentNullException">If the collections argument is null.</exception>
- <exception cref="T:System.ArgumentException">If the collections argument is a 0-length array or contains a
- null element. Also, if atleast one of the collections has been marked complete for adds.</exception>
- <exception cref="T:System.ObjectDisposedException">If atleast one of the collections has been disposed.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.GetHandles(System.Collections.Concurrent.BlockingCollection{`0}[],System.Collections.Concurrent.BlockingCollection{`0}.OperationMode,System.Threading.CancellationToken,System.Boolean,System.Threading.CancellationToken[]@)">
- <summary>
- Local static method, used by TryAddTakeAny to get the wait handles for the collection, with exclude option to exclude the Compeleted collections
- </summary>
- <param name="collections">The blocking collections</param>
- <param name="operationMode">Add or Take operation</param>
- <param name="externalCancellationToken">The original CancellationToken</param>
- <param name="excludeCompleted">True to exclude the compeleted collections</param>
- <param name="cancellationTokens">Complete list of cancellationTokens to observe</param>
- <returns>The collections wait handles</returns>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.WaitHandle_WaitAny(System.Collections.Generic.List{System.Threading.WaitHandle},System.Int32,System.Threading.CancellationToken,System.Threading.CancellationToken)">
- <summary>
- Helper to perform WaitHandle.WaitAny(.., CancellationToken)
- this should eventually appear on the WaitHandle class.
- </summary>
- <param name="handles"></param>
- <param name="millisecondsTimeout"></param>
- <param name="combinedToken"></param>
- <param name="externalToken"></param>
- <returns></returns>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.UpdateTimeOut(System.Int64,System.Int32)">
- <summary>
- Helper function to measure and update the wait time
- </summary>
- <param name="startTimeTicks"> The first time (in Ticks) observed when the wait started</param>
- <param name="originalWaitMillisecondsTimeout">The orginal wait timeoutout in milliseconds</param>
- <returns>The new wait time in milliseconds, -1 if the time expired</returns>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TakeFromAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0@)">
- <summary>
- Takes an item from any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item removed from one of the collections.</param>
- <returns>The index of the collection in the <paramref name="collections"/> array from which
- the item was removed, or -1 if an item could not be removed.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">At least one of the underlying collections was modified
- outside of its <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- <remarks>A call to TakeFromAny may block until an item is available to be removed.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TakeFromAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0@,System.Threading.CancellationToken)">
- <summary>
- Takes an item from any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- A <see cref="T:System.OperationCanceledException"/> is thrown if the <see cref="T:System.Threading.CancellationToken"/> is
- canceled.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item removed from one of the collections.</param>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <returns>The index of the collection in the <paramref name="collections"/> array from which
- the item was removed, or -1 if an item could not be removed.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">At least one of the underlying collections was modified
- outside of its <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- <remarks>A call to TakeFromAny may block until an item is available to be removed.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryTakeFromAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0@)">
- <summary>
- Attempts to remove an item from any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item removed from one of the collections.</param>
- <returns>The index of the collection in the <paramref name="collections"/> array from which
- the item was removed, or -1 if an item could not be removed.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.InvalidOperationException">At least one of the underlying collections was modified
- outside of its <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- <remarks>A call to TryTakeFromAny may block until an item is available to be removed.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryTakeFromAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0@,System.TimeSpan)">
- <summary>
- Attempts to remove an item from any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item removed from one of the collections.</param>
- <param name="timeout">A <see cref="T:System.TimeSpan"/> that represents the number of milliseconds
- to wait, or a <see cref="T:System.TimeSpan"/> that represents -1 milliseconds to wait indefinitely.
- </param>
- <returns>The index of the collection in the <paramref name="collections"/> array from which
- the item was removed, or -1 if an item could not be removed.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="timeout"/> is a negative number
- other than -1 milliseconds, which represents an infinite time-out -or- timeout is greater than
- <see cref="F:System.Int32.MaxValue"/>.</exception>
- <exception cref="T:System.InvalidOperationException">At least one of the underlying collections was modified
- outside of its <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- <remarks>A call to TryTakeFromAny may block until an item is available to be removed.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryTakeFromAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0@,System.Int32)">
- <summary>
- Attempts to remove an item from any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item removed from one of the collections.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param>
- <returns>The index of the collection in the <paramref name="collections"/> array from which
- the item was removed, or -1 if an item could not be removed.</returns>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">At least one of the underlying collections was modified
- outside of its <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- <remarks>A call to TryTakeFromAny may block until an item is available to be removed.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.TryTakeFromAny(System.Collections.Concurrent.BlockingCollection{`0}[],`0@,System.Int32,System.Threading.CancellationToken)">
- <summary>
- Attempts to remove an item from any one of the specified
- <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances.
- A <see cref="T:System.OperationCanceledException"/> is thrown if the <see cref="T:System.Threading.CancellationToken"/> is
- canceled.
- </summary>
- <param name="collections">The array of collections.</param>
- <param name="item">The item removed from one of the collections.</param>
- <param name="millisecondsTimeout">The number of milliseconds to wait, or <see cref="F:System.Threading.Timeout.Infinite"/> (-1) to wait indefinitely.</param>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <returns>The index of the collection in the <paramref name="collections"/> array from which
- the item was removed, or -1 if an item could not be removed.</returns>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- <exception cref="T:System.ArgumentNullException">The <paramref name="collections"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="collections"/> argument is
- a 0-length array or contains a null element.</exception>
- <exception cref="T:System.ObjectDisposedException">At least one of the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances has been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="millisecondsTimeout"/> is a
- negative number other than -1, which represents an infinite time-out.</exception>
- <exception cref="T:System.InvalidOperationException">At least one of the underlying collections was modified
- outside of its <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The count of <paramref name="collections"/> is greater than the maximum size of
- 62 for STA and 63 for MTA.</exception>
- <remarks>A call to TryTakeFromAny may block until an item is available to be removed.</remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.CompleteAdding">
- <summary>
- Marks the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instances
- as not accepting any more additions.
- </summary>
- <remarks>
- After a collection has been marked as complete for adding, adding to the collection is not permitted
- and attempts to remove from the collection will not wait when the collection is empty.
- </remarks>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.CancelWaitingConsumers">
- <summary>Cancels the semaphores.</summary>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.Dispose">
- <summary>
- Releases resources used by the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.Dispose(System.Boolean)">
- <summary>
- Releases resources used by the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.
- </summary>
- <param name="disposing">Whether being disposed explicitly (true) or due to a finalizer (false).</param>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.ToArray">
- <summary>Copies the items from the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance into a new array.</summary>
- <returns>An array containing copies of the elements of the collection.</returns>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <remarks>
- The copied elements are not removed from the collection.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.CopyTo(`0[],System.Int32)">
- <summary>Copies all of the items in the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance
- to a compatible one-dimensional array, starting at the specified index of the target array.
- </summary>
- <param name="array">The one-dimensional array that is the destination of the elements copied from
- the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance. The array must have zero-based indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="array"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="index"/> argument is less than zero.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="index"/> argument is equal to or greater
- than the length of the <paramref name="array"/>.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
- <summary>Copies all of the items in the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance
- to a compatible one-dimensional array, starting at the specified index of the target array.
- </summary>
- <param name="array">The one-dimensional array that is the destination of the elements copied from
- the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance. The array must have zero-based indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
- <exception cref="T:System.ArgumentNullException">The <paramref name="array"/> argument is
- null.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="index"/> argument is less than zero.</exception>
- <exception cref="T:System.ArgumentException">The <paramref name="index"/> argument is equal to or greater
- than the length of the <paramref name="array"/>, the array is multidimensional, or the type parameter for the collection
- cannot be cast automatically to the type of the destination array.</exception>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.GetConsumingEnumerable">
- <summary>Provides a consuming <see cref="T:System.Collections.Generics.IEnumerable{T}"/> for items in the collection.</summary>
- <returns>An <see cref="T:System.Collections.Generics.IEnumerable{T}"/> that removes and returns items from the collection.</returns>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.GetConsumingEnumerable(System.Threading.CancellationToken)">
- <summary>Provides a consuming <see cref="T:System.Collections.Generics.IEnumerable{T}"/> for items in the collection.
- Calling MoveNext on the returned enumerable will block if there is no data available, or will
- throw an <see cref="T:System.OperationCanceledException"/> if the <see cref="T:System.Threading.CancellationToken"/> is canceled.
- </summary>
- <param name="cancellationToken">A cancellation token to observe.</param>
- <returns>An <see cref="T:System.Collections.Generics.IEnumerable{T}"/> that removes and returns items from the collection.</returns>
- <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- <exception cref="T:System.OperationCanceledException">If the <see cref="T:System.Threading.CancellationToken"/> is canceled.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.System#Collections#Generic#IEnumerable{T}#GetEnumerator">
- <summary>Provides an <see cref="T:System.Collections.Generics.IEnumerator{T}"/> for items in the collection.</summary>
- <returns>An <see cref="T:System.Collections.Generics.IEnumerator{T}"/> for the items in the collection.</returns>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.System#Collections#IEnumerable#GetEnumerator">
- <summary>Provides an <see cref="T:System.Collections.IEnumerator"/> for items in the collection.</summary>
- <returns>An <see cref="T:System.Collections.IEnumerator"/> for the items in the collection.</returns>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.ValidateCollectionsArray(System.Collections.Concurrent.BlockingCollection{`0}[],System.Collections.Concurrent.BlockingCollection{`0}.OperationMode)">
- <summary>Centralizes the logic for validating the BlockingCollections array passed to TryAddToAny()
- and TryTakeFromAny().</summary>
- <param name="collections">The collections to/from which an item should be added/removed.</param>
- <param name="operationMode">Indicates whether this method is called to Add or Take.</param>
- <returns>A copy of the collections array that acts as a defense to prevent an “outsider” from changing
- elements of the array after we have done the validation on them.</returns>
- <exception cref="T:System.ArgumentNullException">If the collections argument is null.</exception>
- <exception cref="T:System.ArgumentException">If the collections argument is a 0-length array or contains a
- null element. Also, if atleast one of the collections has been marked complete for adds.</exception>
- <exception cref="T:System.ObjectDisposedException">If atleast one of the collections has been disposed.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.ValidateTimeout(System.TimeSpan)">
- <summary>Centeralizes the logic of validating the timeout input argument.</summary>
- <param name="timeout">The TimeSpan to wait for to successfully complete an operation on the collection.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">If the number of millseconds represented by the timeout
- TimeSpan is less than 0 or is larger than Int32.MaxValue and not Timeout.Infinite</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.ValidateMillisecondsTimeout(System.Int32)">
- <summary>Centralizes the logic of validating the millisecondsTimeout input argument.</summary>
- <param name="millisecondsTimeout">The number of milliseconds to wait for to successfully complete an
- operation on the collection.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">If the number of millseconds is less than 0 and not
- equal to Timeout.Infinite.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.BlockingCollection`1.CheckDisposed">
- <summary>Throws a System.ObjectDisposedException if the collection was disposed</summary>
- <exception cref="T:System.ObjectDisposedException">If the collection has been disposed.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.BlockingCollection`1.BoundedCapacity">
- <summary>Gets the bounded capacity of this <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> instance.</summary>
- <value>The bounded capacity of this collection, or int.MaxValue if no bound was supplied.</value>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.BlockingCollection`1.IsAddingCompleted">
- <summary>Gets whether this <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been marked as complete for adding.</summary>
- <value>Whether this collection has been marked as complete for adding.</value>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.BlockingCollection`1.IsCompleted">
- <summary>Gets whether this <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been marked as complete for adding and is empty.</summary>
- <value>Whether this collection has been marked as complete for adding and is empty.</value>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.BlockingCollection`1.Count">
- <summary>Gets the number of items contained in the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.</summary>
- <value>The number of items contained in the <see cref="T:System.Collections.Concurrent.BlockingCollection{T}"/>.</value>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.BlockingCollection`1.System#Collections#ICollection#IsSynchronized">
- <summary>Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is synchronized.</summary>
- <exception cref="T:System.ObjectDisposedException">The <see
- cref="T:System.Collections.Concurrent.BlockingCollection{T}"/> has been disposed.</exception>
- </member>
- <member name="P:System.Collections.Concurrent.BlockingCollection`1.System#Collections#ICollection#SyncRoot">
- <summary>
- Gets an object that can be used to synchronize access to the <see
- cref="T:System.Collections.ICollection"/>. This property is not supported.
- </summary>
- <exception cref="T:System.NotSupportedException">The SyncRoot property is not supported.</exception>
- </member>
- <member name="T:System.Collections.Concurrent.BlockingCollection`1.OperationMode">
- <summary>An enumerated data type used internal to the class to specify to a generic method
- the current mode of operation.</summary>
- </member>
- <member name="T:System.Collections.Concurrent.SystemThreadingCollections_BlockingCollectionDebugView`1">
- <summary>A debugger view of the blocking collection that makes it simple to browse the
- collection's contents at a point in time.</summary>
- <typeparam name="T">The type of element that the BlockingCollection will hold.</typeparam>
- </member>
- <member name="M:System.Collections.Concurrent.SystemThreadingCollections_BlockingCollectionDebugView`1.#ctor(System.Collections.Concurrent.BlockingCollection{`0})">
- <summary>Constructs a new debugger view object for the provided blocking collection object.</summary>
- <param name="collection">A blocking collection to browse in the debugger.</param>
- </member>
- <member name="P:System.Collections.Concurrent.SystemThreadingCollections_BlockingCollectionDebugView`1.Items">
- <summary>Returns a snapshot of the underlying collection's elements.</summary>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentBag`1">
- <summary>
- Represents an thread-safe, unordered collection of objects.
- </summary>
- <typeparam name="T">Specifies the type of elements in the bag.</typeparam>
- <remarks>
- <para>
- Bags are useful for storing objects when ordering doesn't matter, and unlike sets, bags support
- duplicates. <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> is a thread-safe bag implementation, optimized for
- scenarios where the same thread will be both producing and consuming data stored in the bag.
- </para>
- <para>
- <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> accepts null reference (Nothing in Visual Basic) as a valid
- value for reference types.
- </para>
- <para>
- All public and protected members of <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> are thread-safe and may be used
- concurrently from multiple threads.
- </para>
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>
- class.
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>
- class that contains elements copied from the specified collection.
- </summary>
- <param name="collection">The collection whose elements are copied to the new <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is a null reference
- (Nothing in Visual Basic).</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.Initialize(System.Collections.Generic.IEnumerable{`0})">
- <summary>
- Local helper function to initalize a new bag object
- </summary>
- <param name="collection">An enumeration containing items with which to initialize this bag.</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.Add(`0)">
- <summary>
- Adds an object to the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.
- </summary>
- <param name="item">The object to be added to the
- <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>. The value can be a null reference
- (Nothing in Visual Basic) for reference types.</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.AddInternal(System.Collections.Concurrent.ConcurrentBag{`0}.ThreadLocalList,`0)">
- <summary>
- </summary>
- <param name="list"></param>
- <param name="item"></param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.System#Collections#Concurrent#IProducerConsumerCollection{T}#TryAdd(`0)">
- <summary>
- Attempts to add an object to the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.
- </summary>
- <param name="item">The object to be added to the
- <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>. The value can be a null reference
- (Nothing in Visual Basic) for reference types.</param>
- <returns>Always returns true</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.TryTake(`0@)">
- <summary>
- Attempts to remove and return an object from the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.
- </summary>
- <param name="result">When this method returns, <paramref name="result"/> contains the object
- removed from the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> or the default value
- of <typeparamref name="T"/> if the operation failed.</param>
- <returns>true if an object was removed successfully; otherwise, false.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.TryPeek(`0@)">
- <summary>
- Attempts to return an object from the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>
- without removing it.
- </summary>
- <param name="result">When this method returns, <paramref name="result"/> contains an object from
- the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> or the default value of
- <typeparamref name="T"/> if the operation failed.</param>
- <returns>true if and object was returned successfully; otherwise, false.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.TryTakeOrPeek(`0@,System.Boolean)">
- <summary>
- Local helper function to Take or Peek an item from the bag
- </summary>
- <param name="result">To receive the item retrieved from the bag</param>
- <param name="take">True means Take operation, false means Peek operation</param>
- <returns>True if succeeded, false otherwise</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.GetThreadList(System.Boolean)">
- <summary>
- Local helper function to retrieve a thread local list by a thread object
- </summary>
- <param name="forceCreate">Create a new list if the thread does ot exist</param>
- <returns>The local list object</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.GetUnownedList">
- <summary>
- Try to reuse an unowned list if exist
- unowned lists are the lists that their owner threads are aborted or terminated
- this is workaround to avoid memory leaks.
- </summary>
- <returns>The list object, null if all lists are owned</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.Steal(`0@,System.Boolean)">
- <summary>
- Local helper method to steal an item from any other non empty thread
- It enumerate all other threads in two passes first pass acquire the lock with TryEnter if succeeded
- it steals the item, otherwise it enumerate them again in 2nd pass and acquire the lock using Enter
- </summary>
- <param name="result">To receive the item retrieved from the bag</param>
- <param name="take">Whether to remove or peek.</param>
- <returns>True if succeeded, false otherwise.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.TrySteal(System.Collections.Concurrent.ConcurrentBag{`0}.ThreadLocalList,`0@,System.Boolean)">
- <summary>
- local helper function tries to steal an item from given local list
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.CanSteal(System.Collections.Concurrent.ConcurrentBag{`0}.ThreadLocalList)">
- <summary>
- Local helper function to check the list if it became empty after acquiring the lock
- and wait if there is unsynchronized Add/Take operation in the list to be done
- </summary>
- <param name="list">The list to steal</param>
- <returns>True if can steal, false otherwise</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.CopyTo(`0[],System.Int32)">
- <summary>
- Copies the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> elements to an existing
- one-dimensional <see cref="T:System.Array">Array</see>, starting at the specified array
- index.
- </summary>
- <param name="array">The one-dimensional <see cref="T:System.Array">Array</see> that is the
- destination of the elements copied from the
- <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>. The <see cref="T:System.Array">Array</see> must have zero-based indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying
- begins.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (Nothing in
- Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is less than
- zero.</exception>
- <exception cref="T:System.ArgumentException"><paramref name="index"/> is equal to or greater than the
- length of the <paramref name="array"/>
- -or- the number of elements in the source <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> is greater than the available space from
- <paramref name="index"/> to the end of the destination <paramref name="array"/>.</exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
- <summary>
- Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an <see cref="T:System.Array"/>, starting at a particular
- <see cref="T:System.Array"/> index.
- </summary>
- <param name="array">The one-dimensional <see cref="T:System.Array">Array</see> that is the
- destination of the elements copied from the
- <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>. The <see cref="T:System.Array">Array</see> must have zero-based indexing.</param>
- <param name="index">The zero-based index in <paramref name="array"/> at which copying
- begins.</param>
- <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (Nothing in
- Visual Basic).</exception>
- <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is less than
- zero.</exception>
- <exception cref="T:System.ArgumentException">
- <paramref name="array"/> is multidimensional. -or-
- <paramref name="array"/> does not have zero-based indexing. -or-
- <paramref name="index"/> is equal to or greater than the length of the <paramref name="array"/>
- -or- The number of elements in the source <see cref="T:System.Collections.ICollection"/> is
- greater than the available space from <paramref name="index"/> to the end of the destination
- <paramref name="array"/>. -or- The type of the source <see cref="T:System.Collections.ICollection"/> cannot be cast automatically to the type of the
- destination <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.ToArray">
- <summary>
- Copies the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> elements to a new array.
- </summary>
- <returns>A new array containing a snapshot of elements copied from the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.GetEnumerator">
- <summary>
- Returns an enumerator that iterates through the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.
- </summary>
- <returns>An enumerator for the contents of the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.</returns>
- <remarks>
- The enumeration represents a moment-in-time snapshot of the contents
- of the bag. It does not reflect any updates to the collection after
- <see cref="M:System.Collections.Concurrent.ConcurrentBag`1.GetEnumerator"/> was called. The enumerator is safe to use
- concurrently with reads from and writes to the bag.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.System#Collections#IEnumerable#GetEnumerator">
- <summary>
- Returns an enumerator that iterates through the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.
- </summary>
- <returns>An enumerator for the contents of the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.</returns>
- <remarks>
- The items enumerated represent a moment-in-time snapshot of the contents
- of the bag. It does not reflect any update to the collection after
- <see cref="M:System.Collections.Concurrent.ConcurrentBag`1.GetEnumerator"/> was called.
- </remarks>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.OnSerializing(System.Runtime.Serialization.StreamingContext)">
- <summary>
- Get the data array to be serialized
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.OnDeserialized(System.Runtime.Serialization.StreamingContext)">
- <summary>
- Construct the stack from a previously seiralized one
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.FreezeBag(System.Boolean@)">
- <summary>
- Local helper method to freeze all bag operations, it
- 1- Acquire the global lock to prevent any other thread to freeze the bag, and also new new thread can be added
- to the dictionary
- 2- Then Acquire all local lists locks to prevent steal and synchronized operations
- 3- Wait for all un-synchronized operations to be done
- </summary>
- <param name="lockTaken">Retrieve the lock taken result for the global lock, to be passed to Unfreeze method</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.UnfreezeBag(System.Boolean)">
- <summary>
- Local helper method to unfreeze the bag from a frozen state
- </summary>
- <param name="lockTaken">The lock taken result from the Freeze method</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.AcquireAllLocks">
- <summary>
- local helper method to acquire all local lists locks
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.ReleaseAllLocks">
- <summary>
- Local helper method to release all local lists locks
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.WaitAllOperations">
- <summary>
- Local helper function to wait all unsynchronized operations
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.GetCountInternal">
- <summary>
- Local helper function to get the bag count, the caller should call it from Freeze/Unfreeze block
- </summary>
- <returns>The current bag count</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.ToList">
- <summary>
- Local helper function to return the bag item in a list, this is mainly used by CopyTo and ToArray
- This is not thread safe, should be called in Freeze/UnFreeze bag block
- </summary>
- <returns>List the contains the bag items</returns>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentBag`1.Count">
- <summary>
- Gets the number of elements contained in the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.
- </summary>
- <value>The number of elements contained in the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>.</value>
- <remarks>
- The count returned represents a moment-in-time snapshot of the contents
- of the bag. It does not reflect any updates to the collection after
- <see cref="M:System.Collections.Concurrent.ConcurrentBag`1.GetEnumerator"/> was called.
- </remarks>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentBag`1.IsEmpty">
- <summary>
- Gets a value that indicates whether the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> is empty.
- </summary>
- <value>true if the <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/> is empty; otherwise, false.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentBag`1.System#Collections#ICollection#IsSynchronized">
- <summary>
- Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"/> is
- synchronized with the SyncRoot.
- </summary>
- <value>true if access to the <see cref="T:System.Collections.ICollection"/> is synchronized
- with the SyncRoot; otherwise, false. For <see cref="T:System.Collections.Concurrent.ConcurrentBag`1"/>, this property always
- returns false.</value>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentBag`1.System#Collections#ICollection#SyncRoot">
- <summary>
- Gets an object that can be used to synchronize access to the <see
- cref="T:System.Collections.ICollection"/>. This property is not supported.
- </summary>
- <exception cref="T:System.NotSupportedException">The SyncRoot property is not supported.</exception>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentBag`1.Node">
- <summary>
- A class that represents a node in the lock thread list
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentBag`1.ThreadLocalList">
- <summary>
- A class that represents the lock thread list
- </summary>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.ThreadLocalList.#ctor(System.Threading.Thread)">
- <summary>
- ThreadLocalList constructor
- </summary>
- <param name="ownerThread">The owner thread for this list</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.ThreadLocalList.Add(`0,System.Boolean)">
- <summary>
- Add new item to head of the list
- </summary>
- <param name="item">The item to add.</param>
- <param name="updateCount">Whether to update the count.</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.ThreadLocalList.Remove(`0@)">
- <summary>
- Remove an item from the head of the list
- </summary>
- <param name="result">The removed item</param>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.ThreadLocalList.Peek(`0@)">
- <summary>
- Peek an item from the head of the list
- </summary>
- <param name="result">the peeked item</param>
- <returns>True if succeeded, false otherwise</returns>
- </member>
- <member name="M:System.Collections.Concurrent.ConcurrentBag`1.ThreadLocalList.Steal(`0@,System.Boolean)">
- <summary>
- Steal an item from the tail of the list
- </summary>
- <param name="result">the removed item</param>
- <param name="remove">remove or peek flag</param>
- </member>
- <member name="P:System.Collections.Concurrent.ConcurrentBag`1.ThreadLocalList.Count">
- <summary>
- Gets the total list count, it's not thread safe, may provide incorrect count if it is called concurrently
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.ConcurrentBag`1.ListOperation">
- <summary>
- List operations
- </summary>
- </member>
- <member name="T:System.Collections.Concurrent.SystemThreadingCollection_IProducerConsumerCollectionDebugView`1">
- <summary>
- A simple class for the debugger view window
- </summary>
- </member>
- <member name="T:System.Linq.ParallelEnumerable">
- <summary>
- Provides a set of methods for querying objects that implement
- ParallelQuery{TSource}. This is the parallel equivalent of
- <see cref="T:System.Linq.Enumerable"/>.
- </summary>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.AsParallel``1(System.Collections.Generic.IEnumerable{``0})">
- <summary>
- Enables parallelization of a query.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">An <see cref="T:System.Collections.Generic.IEnumerable`1"/>
- to convert to a <see cref="T:System.Linq.ParallelQuery`1"/>.</param>
- <returns>The source as a <see cref="T:System.Linq.ParallelQuery`1"/> to bind to
- ParallelEnumerable extension methods.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.AsParallel``1(System.Collections.Concurrent.Partitioner{``0})">
- <summary>
- Enables parallelization of a query, as sourced by a partitioner
- responsible for splitting the input sequence into partitions.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A partitioner over the input sequence.</param>
- <returns>The <paramref name="source"/> as a ParallelQuery to bind to ParallelEnumerable extension methods.</returns>
- <remarks>
- The source partitioner's GetOrderedPartitions method is used when ordering is enabled,
- whereas the partitioner's GetPartitions is used if ordering is not enabled (the default).
- The source partitioner's GetDynamicPartitions and GetDynamicOrderedPartitions are not used.
- </remarks>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.AsOrdered``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Enables treatment of a data source as if it was ordered, overriding the default of unordered.
- AsOrdered may only be invoked on sequences returned by AsParallel, ParallelEnumerable.Range,
- and ParallelEnumerable.Repeat.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The input sequence.</param>
- <exception cref="T:System.InvalidOperationException">
- Thrown if <paramref name="source"/> is not one of AsParallel, ParallelEnumerable.Range, or ParallelEnumerable.Repeat.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <remarks>
- A natural tension exists between performance and preserving order in parallel processing. By default,
- a parallelized query behaves as if the ordering of the results is arbitrary
- unless AsOrdered is applied or there is an explicit OrderBy operator in the query.
- </remarks>
- <returns>The source sequence which will maintain ordering in the query.</returns>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.AsOrdered(System.Linq.ParallelQuery)">
- <summary>
- Enables treatment of a data source as if it was ordered, overriding the default of unordered.
- AsOrdered may only be invoked on sequences returned by AsParallel, ParallelEnumerable.Range,
- and ParallelEnumerable.Repeat.
- </summary>
- <param name="source">The input sequence.</param>
- <exception cref="T:System.InvalidOperationException">
- Thrown if the <paramref name="source"/> is not one of AsParallel, ParallelEnumerable.Range, or ParallelEnumerable.Repeat.
- </exception>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <remarks>
- A natural tension exists between performance and preserving order in parallel processing. By default,
- a parallelized query behaves as if the ordering of the results is arbitrary unless AsOrdered
- is applied or there is an explicit OrderBy operator in the query.
- </remarks>
- <returns>The source sequence which will maintain ordering in the query.</returns>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.AsUnordered``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Allows an intermediate query to be treated as if no ordering is implied among the elements.
- </summary>
- <remarks>
- AsUnordered may provide
- performance benefits when ordering is not required in a portion of a query.
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The input sequence.</param>
- <returns>The source sequence with arbitrary order.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.AsParallel(System.Collections.IEnumerable)">
- <summary>
- Enables parallelization of a query.
- </summary>
- <param name="source">An <see cref="T:System.Collections.Generic.IEnumerable`1"/> to convert
- to a <see cref="T:System.Linq.ParallelQuery`1"/>.</param>
- <returns>
- The source as a ParallelQuery to bind to
- ParallelEnumerable extension methods.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.AsSequential``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Converts a <see cref="T:System.Linq.ParallelQuery`1"/> into an
- <see cref="T:System.Collections.Generic.IEnumerable`1"/> to force sequential
- evaluation of the query.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A <see cref="T:System.Linq.ParallelQuery`1"/> to convert to an <see cref="T:System.Collections.Generic.IEnumerable`1"/>.</param>
- <returns>The source as an <see cref="T:System.Collections.Generic.IEnumerable`1"/>
- to bind to sequential extension methods.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.WithTaskScheduler``1(System.Linq.ParallelQuery{``0},System.Threading.Tasks.TaskScheduler)">
- <summary>
- Sets the task scheduler to execute the query.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A ParallelQuery on which to set the task scheduler option.</param>
- <param name="taskScheduler">Task scheduler to execute the query.</param>
- <returns>ParallelQuery representing the same query as source, but with the task scheduler option set.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="taskScheduler"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- WithTaskScheduler is used multiple times in the query.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.WithDegreeOfParallelism``1(System.Linq.ParallelQuery{``0},System.Int32)">
- <summary>
- Sets the degree of parallelism to use in a query. Degree of parallelism is the maximum number of concurrently
- executing tasks that will be used to process the query.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A ParallelQuery on which to set the limit on the degrees of parallelism.</param>
- <param name="degreeOfParallelism">The degree of parallelism for the query.</param>
- <returns>ParallelQuery representing the same query as source, with the limit on the degrees of parallelism set.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- WithDegreeOfParallelism is used multiple times in the query.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="degreeOfParallelism"/> is less than 1 or greater than 63.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.WithCancellation``1(System.Linq.ParallelQuery{``0},System.Threading.CancellationToken)">
- <summary>
- Sets the <see cref="T:System.Threading.CancellationToken"/> to associate with the query.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A ParallelQuery on which to set the option.</param>
- <param name="cancellationToken">A cancellation token.</param>
- <returns>ParallelQuery representing the same query as source, but with the <seealso cref="T:System.Threading.CancellationToken"/>
- registered.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- WithCancellation is used multiple times in the query.
- </exception>
- <exception cref="T:System.ObjectDisposedException">
- The <see cref="T:System.Threading.CancellationTokenSource"/> associated with the <paramref name="cancellationToken"/> has been disposed.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.WithExecutionMode``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelExecutionMode)">
- <summary>
- Sets the execution mode of the query.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A ParallelQuery on which to set the option.</param>
- <param name="executionMode">The mode in which to execute the query.</param>
- <returns>ParallelQuery representing the same query as source, but with the
- <seealso cref="T:System.Linq.ParallelExecutionMode"/> registered.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.ArgumentException">
- <paramref name="executionMode"/> is not a valid <see cref="T:System.Linq.ParallelExecutionMode"/> value.
- </exception>
- <exception cref="T:System.InvalidOperationException">
- WithExecutionMode is used multiple times in the query.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.WithMergeOptions``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelMergeOptions)">
- <summary>
- Sets the merge options for this query, which specify how the query will buffer output.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A ParallelQuery on which to set the option.</param>
- <param name="mergeOptions">The merge optiosn to set for this query.</param>
- <returns>ParallelQuery representing the same query as source, but with the
- <seealso cref="T:System.Linq.ParallelMergeOptions"/> registered.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.ArgumentException">
- <paramref name="mergeOptions"/> is not a valid <see cref="T:System.Linq.ParallelMergeOptions"/> value.
- </exception>
- <exception cref="T:System.InvalidOperationException">
- WithMergeOptions is used multiple times in the query.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Range(System.Int32,System.Int32)">
- <summary>
- Generates a parallel sequence of integral numbers within a specified range.
- </summary>
- <param name="start">The value of the first integer in the sequence.</param>
- <param name="count">The number of sequential integers to generate.</param>
- <returns>An <b>IEnumerable<Int32></b> in C# or <B>IEnumerable(Of Int32)</B> in
- Visual Basic that contains a range of sequential integral numbers.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="count"/> is less than 0
- -or-
- <paramref name="start"/> + <paramref name="count"/> - 1 is larger than <see cref="M:System.Int32.MaxValue"/>.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Repeat``1(``0,System.Int32)">
- <summary>
- Generates a parallel sequence that contains one repeated value.
- </summary>
- <typeparam name="TResult">The type of the value to be repeated in the result sequence.</typeparam>
- <param name="element">The value to be repeated.</param>
- <param name="count">The number of times to repeat the value in the generated sequence.</param>
- <returns>A sequence that contains a repeated value.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="count"/> is less than 0.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Empty``1">
- <summary>
- Returns an empty ParallelQuery{TResult} that has the specified type argument.
- </summary>
- <typeparam name="TResult">The type to assign to the type parameter of the returned
- generic sequence.</typeparam>
- <returns>An empty sequence whose type argument is <typeparamref name="TResult"/>.</returns>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ForAll``1(System.Linq.ParallelQuery{``0},System.Action{``0})">
- <summary>
- Invokes in parallel the specified action for each element in the <paramref name="source"/>.
- </summary>
- <remarks>
- This is an efficient way to process the output from a parallelized query because it does
- not require a merge step at the end. However, order of execution is non-deterministic.
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The <see cref="T:System.Linq.ParallelQuery`1"/> whose elements will be processed by
- <paramref name="action"/>.</param>
- <param name="action">An Action to invoke on each element.</param>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="action"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Where``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Filters in parallel a sequence of values based on a predicate.
- </summary>
- <typeparam name="TSource">The type of the elements of source.</typeparam>
- <param name="source">A sequence to filter.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>A sequence that contains elements from the input sequence that satisfy
- the condition.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Where``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32,System.Boolean})">
- <summary>
- Filters in parallel a sequence of values based on a predicate. Each element's index is used in the logic of the predicate function.
- </summary>
- <typeparam name="TSource">The type of the elements of source.</typeparam>
- <param name="source">A sequence to filter.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>A sequence that contains elements from the input sequence that satisfy the condition.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Select``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Projects in parallel each element of a sequence into a new form.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TResult">The type of elements resturned by <b>selector</b>.</typeparam>
- <param name="source">A sequence of values to invoke a transform function on.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>A sequence whose elements are the result of invoking the transform function on each
- element of <paramref name="source"/>.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Select``2(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32,``1})">
- <summary>
- Projects in parallel each element of a sequence into a new form by incorporating the element's index.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TResult">The type of elements resturned by <b>selector</b>.</typeparam>
- <param name="source">A sequence of values to invoke a transform function on.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>A sequence whose elements are the result of invoking the transform function on each
- element of <paramref name="source"/>.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Zip``3(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``1},System.Func{``0,``1,``2})">
- <summary>
- Merges in parallel two sequences by using the specified predicate function.
- </summary>
- <typeparam name="TFirst">The type of the elements of the first sequence.</typeparam>
- <typeparam name="TSecond">The type of the elements of the second sequence.</typeparam>
- <typeparam name="TResult">The type of the return elements.</typeparam>
- <param name="first">The first sequence to zip.</param>
- <param name="second">The second sequence to zip.</param>
- <param name="resultSelector">A function to create a result element from two matching elements.</param>
- <returns>
- A sequence that has elements of type <typeparamref name="TResult"/> that are obtained by performing
- resultSelector pairwise on two sequences. If the sequence lengths are unequal, this truncates
- to the length of the shorter sequence.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Zip``3(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``1,``2})">
- <summary>
- This Zip overload should never be called.
- This method is marked as obsolete and always throws
- <see cref="T:System.NotSupportedException"/> when invoked.
- </summary>
- <typeparam name="TFirst">This type parameter is not used.</typeparam>
- <typeparam name="TSecond">This type parameter is not used.</typeparam>
- <typeparam name="TResult">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <param name="resultSelector">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of Zip with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Zip operator would appear to be bind to the parallel implementation, but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Join``4(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})">
- <summary>
- Correlates in parallel the elements of two sequences based on matching keys.
- The default equality comparer is used to compare keys.
- </summary>
- <typeparam name="TOuter">The type of the elements of the first sequence.</typeparam>
- <typeparam name="TInner">The type of the elements of the second sequence.</typeparam>
- <typeparam name="TKey">The type of the keys returned by the key selector functions.</typeparam>
- <typeparam name="TResult">The type of the result elements.</typeparam>
- <param name="outer">The first sequence to join.</param>
- <param name="inner">The sequence to join to the first sequence.</param>
- <param name="outerKeySelector">A function to extract the join key from each element of
- the first sequence.</param>
- <param name="innerKeySelector">A function to extract the join key from each element of
- the second sequence.</param>
- <param name="resultSelector">A function to create a result element from two matching elements.</param>
- <returns>A sequence that has elements of type <typeparamref name="TResult"/> that are obtained by performing
- an inner join on two sequences.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="outer"/> or <paramref name="inner"/> or <paramref name="outerKeySelector"/> or
- <paramref name="innerKeySelector"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Join``4(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3})">
- <summary>
- This Join overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when invoked.
- </summary>
- <typeparam name="TOuter">This type parameter is not used.</typeparam>
- <typeparam name="TInner">This type parameter is not used.</typeparam>
- <typeparam name="TKey">This type parameter is not used.</typeparam>
- <typeparam name="TResult">This type parameter is not used.</typeparam>
- <param name="outer">This parameter is not used.</param>
- <param name="inner">This parameter is not used.</param>
- <param name="outerKeySelector">This parameter is not used.</param>
- <param name="innerKeySelector">This parameter is not used.</param>
- <param name="resultSelector">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage Join with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Join operator would appear to be binding to the parallel implementation, but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Join``4(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})">
- <summary>
- Correlates in parallel the elements of two sequences based on matching keys.
- A specified IEqualityComparer{T} is used to compare keys.
- </summary>
- <typeparam name="TOuter">The type of the elements of the first sequence.</typeparam>
- <typeparam name="TInner">The type of the elements of the second sequence.</typeparam>
- <typeparam name="TKey">The type of the keys returned by the key selector functions.</typeparam>
- <typeparam name="TResult">The type of the result elements.</typeparam>
- <param name="outer">The first sequence to join.</param>
- <param name="inner">The sequence to join to the first sequence.</param>
- <param name="outerKeySelector">A function to extract the join key from each element
- of the first sequence.</param>
- <param name="innerKeySelector">A function to extract the join key from each element
- of the second sequence.</param>
- <param name="resultSelector">A function to create a result element from two matching elements.</param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to hash and compare keys.</param>
- <returns>A sequence that has elements of type <typeparamref name="TResult"/> that are obtained by performing
- an inner join on two sequences.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="outer"/> or <paramref name="inner"/> or <paramref name="outerKeySelector"/> or
- <paramref name="innerKeySelector"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Join``4(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,``1,``3},System.Collections.Generic.IEqualityComparer{``2})">
- <summary>
- This Join overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when invoked.
- </summary>
- <typeparam name="TOuter">This type parameter is not used.</typeparam>
- <typeparam name="TInner">This type parameter is not used.</typeparam>
- <typeparam name="TKey">This type parameter is not used.</typeparam>
- <typeparam name="TResult">This type parameter is not used.</typeparam>
- <param name="outer">This parameter is not used.</param>
- <param name="inner">This parameter is not used.</param>
- <param name="outerKeySelector">This parameter is not used.</param>
- <param name="innerKeySelector">This parameter is not used.</param>
- <param name="resultSelector">This parameter is not used.</param>
- <param name="comparer">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of Join with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Join operator would appear to be binding to the parallel implementation, but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupJoin``4(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3})">
- <summary>
- Correlates in parallel the elements of two sequences based on equality of keys and groups the results.
- The default equality comparer is used to compare keys.
- </summary>
- <typeparam name="TOuter">The type of the elements of the first sequence.</typeparam>
- <typeparam name="TInner">The type of the elements of the second sequence.</typeparam>
- <typeparam name="TKey">The type of the keys returned by the key selector functions.</typeparam>
- <typeparam name="TResult">The type of the result elements.</typeparam>
- <param name="outer">The first sequence to join.</param>
- <param name="inner">The sequence to join to the first sequence.</param>
- <param name="outerKeySelector">A function to extract the join key from each element
- of the first sequence.</param>
- <param name="innerKeySelector">A function to extract the join key from each element
- of the second sequence.</param>
- <param name="resultSelector">A function to create a result element from an element from
- the first sequence and a collection of matching elements from the second sequence.</param>
- <returns>A sequence that has elements of type <typeparamref name="TResult"/> that are obtained by performing
- a grouped join on two sequences.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="outer"/> or <paramref name="inner"/> or <paramref name="outerKeySelector"/> or
- <paramref name="innerKeySelector"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupJoin``4(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3})">
- <summary>
- This GroupJoin overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TOuter">This type parameter is not used.</typeparam>
- <typeparam name="TInner">This type parameter is not used.</typeparam>
- <typeparam name="TKey">This type parameter is not used.</typeparam>
- <typeparam name="TResult">This type parameter is not used.</typeparam>
- <param name="outer">This parameter is not used.</param>
- <param name="inner">This parameter is not used.</param>
- <param name="outerKeySelector">This parameter is not used.</param>
- <param name="innerKeySelector">This parameter is not used.</param>
- <param name="resultSelector">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of GroupJoin with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the GroupJoin operator would appear to be binding to the parallel implementation,
- but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupJoin``4(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3},System.Collections.Generic.IEqualityComparer{``2})">
- <summary>
- Correlates in parallel the elements of two sequences based on key equality and groups the results.
- A specified IEqualityComparer{T} is used to compare keys.
- </summary>
- <typeparam name="TOuter">The type of the elements of the first sequence.</typeparam>
- <typeparam name="TInner">The type of the elements of the second sequence.</typeparam>
- <typeparam name="TKey">The type of the keys returned by the key selector functions.</typeparam>
- <typeparam name="TResult">The type of the result elements.</typeparam>
- <param name="outer">The first sequence to join.</param>
- <param name="inner">The sequence to join to the first sequence.</param>
- <param name="outerKeySelector">A function to extract the join key from each element
- of the first sequence.</param>
- <param name="innerKeySelector">A function to extract the join key from each element
- of the second sequence.</param>
- <param name="resultSelector">A function to create a result element from an element from
- the first sequence and a collection of matching elements from the second sequence.</param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to hash and compare keys.</param>
- <returns>A sequence that has elements of type <typeparamref name="TResult"/> that are obtained by performing
- a grouped join on two sequences.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="outer"/> or <paramref name="inner"/> or <paramref name="outerKeySelector"/> or
- <paramref name="innerKeySelector"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupJoin``4(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``1},System.Func{``0,``2},System.Func{``1,``2},System.Func{``0,System.Collections.Generic.IEnumerable{``1},``3},System.Collections.Generic.IEqualityComparer{``2})">
- <summary>
- This GroupJoin overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TOuter">This type parameter is not used.</typeparam>
- <typeparam name="TInner">This type parameter is not used.</typeparam>
- <typeparam name="TKey">This type parameter is not used.</typeparam>
- <typeparam name="TResult">This type parameter is not used.</typeparam>
- <param name="outer">This parameter is not used.</param>
- <param name="inner">This parameter is not used.</param>
- <param name="outerKeySelector">This parameter is not used.</param>
- <param name="innerKeySelector">This parameter is not used.</param>
- <param name="resultSelector">This parameter is not used.</param>
- <param name="comparer">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of GroupJoin with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the GroupJoin operator would appear to be binding to the parallel implementation,
- but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SelectMany``2(System.Linq.ParallelQuery{``0},System.Func{``0,System.Collections.Generic.IEnumerable{``1}})">
- <summary>
- Projects in parallel each element of a sequence to an IEnumerable{T}
- and flattens the resulting sequences into one sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TResult">The type of the elements of the sequence returned by <B>selector</B>.</typeparam>
- <param name="source">A sequence of values to project.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>A sequence whose elements are the result of invoking the one-to-many transform
- function on each element of the input sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SelectMany``2(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32,System.Collections.Generic.IEnumerable{``1}})">
- <summary>
- Projects in parallel each element of a sequence to an IEnumerable{T}, and flattens the resulting
- sequences into one sequence. The index of each source element is used in the projected form of
- that element.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TResult">The type of the elements of the sequence returned by <B>selector</B>.</typeparam>
- <param name="source">A sequence of values to project.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>A sequence whose elements are the result of invoking the one-to-many transform
- function on each element of the input sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SelectMany``3(System.Linq.ParallelQuery{``0},System.Func{``0,System.Collections.Generic.IEnumerable{``1}},System.Func{``0,``1,``2})">
- <summary>
- Projects each element of a sequence to an IEnumerable{T},
- flattens the resulting sequences into one sequence, and invokes a result selector
- function on each element therein.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TCollection">The type of the intermediate elements collected by <paramref name="collectionSelector"/>.</typeparam>
- <typeparam name="TResult"></typeparam>
- <param name="source">A sequence of values to project.</param>
- <param name="collectionSelector">A transform function to apply to each source element;
- the second parameter of the function represents the index of the source element.</param>
- <param name="resultSelector">A function to create a result element from an element from
- the first sequence and a collection of matching elements from the second sequence.</param>
- <returns>A sequence whose elements are the result of invoking the one-to-many transform
- function <paramref name="collectionSelector"/> on each element of <paramref name="source"/> and then mapping
- each of those sequence elements and their corresponding source element to a result element.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="collectionSelector"/> or
- <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SelectMany``3(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32,System.Collections.Generic.IEnumerable{``1}},System.Func{``0,``1,``2})">
- <summary>
- Projects each element of a sequence to an IEnumerable{T}, flattens the resulting
- sequences into one sequence, and invokes a result selector function on each element
- therein. The index of each source element is used in the intermediate projected
- form of that element.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TCollection">The type of the intermediate elements collected by
- <paramref name="collectionSelector"/>.</typeparam>
- <typeparam name="TResult">The type of elements to return.</typeparam>
- <param name="source">A sequence of values to project.</param>
- <param name="collectionSelector">A transform function to apply to each source element;
- the second parameter of the function represents the index of the source element.</param>
- <param name="resultSelector">A function to create a result element from an element from
- the first sequence and a collection of matching elements from the second sequence.</param>
- <returns>
- A sequence whose elements are the result of invoking the one-to-many transform
- function <paramref name="collectionSelector"/> on each element of <paramref name="source"/> and then mapping
- each of those sequence elements and their corresponding source element to a
- result element.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="collectionSelector"/> or
- <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.OrderBy``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Sorts in parallel the elements of a sequence in ascending order according to a key.
- </summary>
- <remarks>
- In contrast to the sequential implementation, this is not a stable sort.
- To achieve a stable sort, change a query of the form:
- <code>var ordered = source.OrderBy((e) => e.k);</code>
- to instead be formed as:
- <code>var ordered = source.Select((e,i) => new { E=e, I=i }).OrderBy((v) => v.i).Select((v) => v.e);</code>
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">A sequence of values to order.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <returns>An OrderedParallelQuery{TSource} whose elements are sorted
- according to a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.OrderBy``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})">
- <summary>
- Sorts in parallel the elements of a sequence in ascending order by using a specified comparer.
- </summary>
- <remarks>
- In contrast to the sequential implementation, this is not a stable sort.
- See the remarks for OrderBy(ParallelQuery{TSource}, Func{TSource,TKey}) for
- an approach to implementing a stable sort.
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">A sequence of values to order.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <param name="comparer">An IComparer{TKey} to compare keys.</param>
- <returns>An OrderedParallelQuery{TSource} whose elements are sorted according
- to a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.OrderByDescending``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Sorts in parallel the elements of a sequence in descending order according to a key.
- </summary>
- <remarks>
- In contrast to the sequential implementation, this is not a stable sort.
- See the remarks for OrderBy(ParallelQuery{TSource}, Func{TSource,TKey}) for
- an approach to implementing a stable sort.
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">A sequence of values to order.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <returns>An OrderedParallelQuery{TSource} whose elements are sorted
- descending according to a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.OrderByDescending``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})">
- <summary>
- Sorts the elements of a sequence in descending order by using a specified comparer.
- </summary>
- <remarks>
- In contrast to the sequential implementation, this is not a stable sort.
- See the remarks for OrderBy(ParallelQuery{TSource}, Func{TSource,TKey}) for
- an approach to implementing a stable sort.
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">A sequence of values to order.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <param name="comparer">An IComparer{TKey} to compare keys.</param>
- <returns>An OrderedParallelQuery{TSource} whose elements are sorted descending
- according to a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ThenBy``2(System.Linq.OrderedParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Performs in parallel a subsequent ordering of the elements in a sequence
- in ascending order according to a key.
- </summary>
- <remarks>
- In contrast to the sequential implementation, this is not a stable sort.
- See the remarks for OrderBy(ParallelQuery{TSource}, Func{TSource,TKey}) for
- an approach to implementing a stable sort.
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">An OrderedParallelQuery{TSource} than
- contains elements to sort.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <returns>An OrderedParallelQuery{TSource} whose elements are
- sorted according to a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ThenBy``2(System.Linq.OrderedParallelQuery{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})">
- <summary>
- Performs in parallel a subsequent ordering of the elements in a sequence in
- ascending order by using a specified comparer.
- </summary>
- <remarks>
- In contrast to the sequential implementation, this is not a stable sort.
- See the remarks for OrderBy(ParallelQuery{TSource}, Func{TSource,TKey}) for
- an approach to implementing a stable sort.
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">An OrderedParallelQuery{TSource} that contains
- elements to sort.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <param name="comparer">An IComparer{TKey} to compare keys.</param>
- <returns>An OrderedParallelQuery{TSource} whose elements are sorted
- according to a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ThenByDescending``2(System.Linq.OrderedParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Performs in parallel a subsequent ordering of the elements in a sequence in
- descending order, according to a key.
- </summary>
- <remarks>
- In contrast to the sequential implementation, this is not a stable sort.
- See the remarks for OrderBy(ParallelQuery{TSource}, Func{TSource,TKey}) for
- an approach to implementing a stable sort.
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">An OrderedParallelQuery{TSource} than contains
- elements to sort.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <returns>An OrderedParallelQuery{TSource} whose elements are sorted
- descending according to a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ThenByDescending``2(System.Linq.OrderedParallelQuery{``0},System.Func{``0,``1},System.Collections.Generic.IComparer{``1})">
- <summary>
- Performs in parallel a subsequent ordering of the elements in a sequence in descending
- order by using a specified comparer.
- </summary>
- <remarks>
- In contrast to the sequential implementation, this is not a stable sort.
- See the remarks for OrderBy(ParallelQuery{TSource}, Func{TSource,TKey}) for
- an approach to implementing a stable sort.
- </remarks>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">An OrderedParallelQuery{TSource} than contains
- elements to sort.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <param name="comparer">An IComparer{TKey} to compare keys.</param>
- <returns>An OrderedParallelQuery{TSource} whose elements are sorted
- descending according to a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupBy``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Groups in parallel the elements of a sequence according to a specified key selector function.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">An OrderedParallelQuery{TSource}than contains
- elements to sort.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <returns>An OrderedParallelQuery{TSource}whose elements are sorted
- descending according to a key.</returns>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupBy``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})">
- <summary>
- Groups in parallel the elements of a sequence according to a specified key selector function and compares the keys by using a specified comparer.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>>.</typeparam>
- <param name="source">An OrderedParallelQuery{TSource} than contains
- elements to sort.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <param name="comparer">An IComparer{TSource} to compare keys.</param>
- <returns>An OrderedParallelQuery{TSource} whose elements are sorted
- descending according to a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupBy``3(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``0,``2})">
- <summary>
- Groups in parallel the elements of a sequence according to a specified key selector function and
- projects the elements for each group by using a specified function.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TElement">The type of the elements in the IGrouping</typeparam>
- <param name="source">An OrderedParallelQuery<(Of <(TElement>)>) than contains
- elements to sort.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <param name="elementSelector">A function to map each source element to an element in an IGrouping.</param>
- <returns>A ParallelQuery<IGrouping<TKey, TElement>> in C# or
- ParallelQuery(Of IGrouping(Of TKey, TElement)) in Visual Basic where each IGrouping
- generic object contains a collection of objects of type <typeparamref name="TElement"/> and a key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or
- <paramref name="elementSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupBy``3(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``0,``2},System.Collections.Generic.IEqualityComparer{``1})">
- <summary>
- Groups in parallel the elements of a sequence according to a key selector function.
- The keys are compared by using a comparer and each group's elements are projected by
- using a specified function.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TElement">The type of the elements in the IGrouping</typeparam>
- <param name="source">An OrderedParallelQuery{TSource}than contains elements to sort.</param>
- <param name="keySelector">A function to extract a key from an element.</param>
- <param name="elementSelector">A function to map each source element to an element in an IGrouping.</param>
- <param name="comparer">An IComparer{TSource} to compare keys.</param>
- <returns>
- A ParallelQuery{IGrouping{TKey, TElement}} in C# or
- ParallelQuery(Of IGrouping(Of TKey, TElement)) in Visual Basic where each IGrouping
- generic object contains a collection of objects of type <typeparamref name="TElement"/> and a key.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or
- <paramref name="elementSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupBy``3(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2})">
- <summary>
- Groups in parallel the elements of a sequence according to a specified
- key selector function and creates a result value from each group and its key.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TResult">The type of the result value returned by <paramref name="resultSelector"/>.</typeparam>
- <param name="source">A sequence whose elements to group.</param>
- <param name="keySelector">A function to extract the key for each element.</param>
- <param name="resultSelector">A function to create a result value from each group.</param>
- <returns>A collection of elements of type <typeparamref name="TResult"/> where each element represents a
- projection over a group and its key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or
- <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupBy``3(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``1,System.Collections.Generic.IEnumerable{``0},``2},System.Collections.Generic.IEqualityComparer{``1})">
- <summary>
- Groups in parallel the elements of a sequence according to a specified key selector function
- and creates a result value from each group and its key. The keys are compared
- by using a specified comparer.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TResult">The type of the result value returned by <paramref name="resultSelector"/>.</typeparam>
- <param name="source">A sequence whose elements to group.</param>
- <param name="keySelector">A function to extract the key for each element.</param>
- <param name="resultSelector">A function to create a result value from each group.</param>
- <param name="comparer">An IEqualityComparer{TKey} to compare keys.</param>
- <returns>
- An <B>ParallelQuery<IGrouping<TKey, TResult>></B> in C# or
- <B>ParallelQuery(Of IGrouping(Of TKey, TResult))</B> in Visual Basic where each
- IGrouping<(Of <(TKey, TResult>)>) object contains a collection of objects
- of type <typeparamref name="TResult"/> and a key.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or
- <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupBy``4(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``1,System.Collections.Generic.IEnumerable{``2},``3})">
- <summary>
- Groups in parallel the elements of a sequence according to a specified key
- selector function and creates a result value from each group and its key.
- The elements of each group are projected by using a specified function.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TElement">The type of the elements in each
- IGrouping{TKey, TElement}.</typeparam>
- <typeparam name="TResult">The type of the result value returned by <paramref name="resultSelector"/>.</typeparam>
- <param name="source">A sequence whose elements to group.</param>
- <param name="keySelector">A function to extract the key for each element.</param>
- <param name="elementSelector">A function to map each source element to an element in an
- IGrouping<TKey, TElement>.</param>
- <param name="resultSelector">A function to create a result value from each group.</param>
- <returns>A collection of elements of type <typeparamref name="TElement"/> where each element represents a
- projection over a group and its key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or
- <paramref name="elementSelector"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.GroupBy``4(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``0,``2},System.Func{``1,System.Collections.Generic.IEnumerable{``2},``3},System.Collections.Generic.IEqualityComparer{``1})">
- <summary>
- Groups the elements of a sequence according to a specified key selector function and
- creates a result value from each group and its key. Key values are compared by using a
- specified comparer, and the elements of each group are projected by using a specified function.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TElement">The type of the elements in each
- IGrouping{TKey, TElement}.</typeparam>
- <typeparam name="TResult">The type of the result value returned by <paramref name="resultSelector"/>.</typeparam>
- <param name="source">A sequence whose elements to group.</param>
- <param name="keySelector">A function to extract the key for each element.</param>
- <param name="elementSelector">A function to map each source element to an element in an
- IGrouping{Key, TElement}.</param>
- <param name="resultSelector">A function to create a result value from each group.</param>
- <param name="comparer">An IEqualityComparer{TKey} to compare keys.</param>
- <returns>A collection of elements of type <typeparamref name="TResult"/> where each element represents a
- projection over a group and its key.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or
- <paramref name="elementSelector"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.PerformSequentialAggregation``2(System.Linq.ParallelQuery{``0},``1,System.Boolean,System.Func{``1,``0,``1})">
- <summary>
- Run an aggregation sequentially. If the user-provided reduction function throws an exception, wrap
- it with an AggregateException.
- </summary>
- <param name="source"></param>
- <param name="seed"></param>
- <param name="seedIsSpecified">
- if true, use the seed provided in the method argument
- if false, use the first element of the sequence as the seed instead
- </param>
- <param name="func"></param>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Aggregate``1(System.Linq.ParallelQuery{``0},System.Func{``0,``0,``0})">
- <summary>
- Applies in parallel an accumulator function over a sequence.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence to aggregate over.</param>
- <param name="func">An accumulator function to be invoked on each element.</param>
- <returns>The final accumulator value.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="func"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Aggregate``2(System.Linq.ParallelQuery{``0},``1,System.Func{``1,``0,``1})">
- <summary>
- Applies in parallel an accumulator function over a sequence.
- The specified seed value is used as the initial accumulator value.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TAccumulate">The type of the accumulator value.</typeparam>
- <param name="source">A sequence to aggregate over.</param>
- <param name="seed">The initial accumulator value.</param>
- <param name="func">An accumulator function to be invoked on each element.</param>
- <returns>The final accumulator value.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="func"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Aggregate``3(System.Linq.ParallelQuery{``0},``1,System.Func{``1,``0,``1},System.Func{``1,``2})">
- <summary>
- Applies in parallel an accumulator function over a sequence. The specified
- seed value is used as the initial accumulator value, and the specified
- function is used to select the result value.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TAccumulate">The type of the accumulator value.</typeparam>
- <typeparam name="TResult">The type of the resulting value.</typeparam>
- <param name="source">A sequence to aggregate over.</param>
- <param name="seed">The initial accumulator value.</param>
- <param name="func">An accumulator function to be invoked on each element.</param>
- <param name="resultSelector">A function to transform the final accumulator value
- into the result value.</param>
- <returns>The transformed final accumulator value.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="func"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Aggregate``3(System.Linq.ParallelQuery{``0},``1,System.Func{``1,``0,``1},System.Func{``1,``1,``1},System.Func{``1,``2})">
- <summary>
- Applies in parallel an accumulator function over a sequence. This overload is not
- available in the sequential implementation.
- </summary>
- <remarks>
- This overload is specific to processing a parallelized query. A parallelized query may
- partition the data source sequence into several sub-sequences (partitions).
- The <paramref name="updateAccumulatorFunc"/> is invoked on each element within partitions.
- Each partition then yields a single accumulated result. The <paramref name="combineAccumulatorsFunc"/>
- is then invoked on the results of each partition to yield a single element. This element is then
- transformed by the <paramref name="resultSelector"/> function.
- </remarks>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TAccumulate">The type of the accumulator value.</typeparam>
- <typeparam name="TResult">The type of the resulting value.</typeparam>
- <param name="source">A sequence to aggregate over.</param>
- <param name="seed">The initial accumulator value.</param>
- <param name="updateAccumulatorFunc">
- An accumulator function to be invoked on each element in a partition.
- </param>
- <param name="combineAccumulatorsFunc">
- An accumulator function to be invoked on the yielded element from each partition.
- </param>
- <param name="resultSelector">
- A function to transform the final accumulator value into the result value.
- </param>
- <returns>The transformed final accumulator value.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="updateAccumulatorFunc"/>
- or <paramref name="combineAccumulatorsFunc"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Aggregate``3(System.Linq.ParallelQuery{``0},System.Func{``1},System.Func{``1,``0,``1},System.Func{``1,``1,``1},System.Func{``1,``2})">
- <summary>
- Applies in parallel an accumulator function over a sequence. This overload is not
- available in the sequential implementation.
- </summary>
- <remarks>
- This overload is specific to parallelized queries. A parallelized query may partition the data source sequence
- into several sub-sequences (partitions). The <paramref name="updateAccumulatorFunc"/> is invoked
- on each element within partitions. Each partition then yields a single accumulated result.
- The <paramref name="combineAccumulatorsFunc"/>
- is then invoked on the results of each partition to yield a single element. This element is then
- transformed by the <paramref name="resultSelector"/> function.
- </remarks>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TAccumulate">The type of the accumulator value.</typeparam>
- <typeparam name="TResult">The type of the resulting value.</typeparam>
- <param name="source">A sequence to aggregate over.</param>
- <param name="seedFactory">
- A function that returns the initial accumulator value.
- </param>
- <param name="updateAccumulatorFunc">
- An accumulator function to be invoked on each element in a partition.
- </param>
- <param name="combineAccumulatorsFunc">
- An accumulator function to be invoked on the yielded element from each partition.
- </param>
- <param name="resultSelector">
- A function to transform the final accumulator value into the result value.
- </param>
- <returns>The transformed final accumulator value.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="seedFactory"/> or <paramref name="updateAccumulatorFunc"/>
- or <paramref name="combineAccumulatorsFunc"/> or <paramref name="resultSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Count``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the number of elements in a parallel sequence.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence that contains elements to be counted.</param>
- <returns>The number of elements in the input sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The number of elements in source is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Count``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Returns a number that represents how many elements in the specified
- parallel sequence satisfy a condition.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence that contains elements to be counted.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>
- A number that represents how many elements in the sequence satisfy the condition
- in the predicate function.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The number of elements in source is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.LongCount``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns an Int64 that represents the total number of elements in a parallel sequence.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence that contains elements to be counted.</param>
- <returns>The number of elements in the input sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The number of elements in source is larger than <see cref="M:System.Int64.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.LongCount``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Returns an Int64 that represents how many elements in a parallel sequence satisfy a condition.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence that contains elements to be counted.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>
- A number that represents how many elements in the sequence satisfy the condition
- in the predicate function.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The number of elements in source is larger than <see cref="M:System.Int64.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Int32})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Nullable{System.Int32}})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Int64})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Int64.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Nullable{System.Int64}})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Int64.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Single})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Nullable{System.Single}})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Double})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Nullable{System.Double}})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Decimal})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Decimal.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum(System.Linq.ParallelQuery{System.Nullable{System.Decimal}})">
- <summary>
- Computes in parallel the sum of a sequence of values.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Decimal.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Int32}})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int64})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Int64.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Int64}})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Int64.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Single})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Single}})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Double})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Double}})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Decimal})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Decimal.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Sum``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Decimal}})">
- <summary>
- Computes in parallel the sum of the sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to calculate the sum of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The sum of the values in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum is larger than <see cref="M:System.Decimal.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Int32})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Nullable{System.Int32}})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Int64})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Nullable{System.Int64}})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Single})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Nullable{System.Single}})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Double})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Nullable{System.Double}})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Decimal})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min(System.Linq.ParallelQuery{System.Nullable{System.Decimal}})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the minimum value in a parallel sequence of values.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements and <typeparamref name="TSource"/> is a non-nullable value type.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Int32}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int64})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Int64}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Single})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Single}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Double})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Double}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Decimal})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Decimal}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Min``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the minimum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TResult">The type of the value returned by <paramref name="selector"/>.</typeparam>
- <param name="source">A sequence of values to determine the minimum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The minimum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements and <typeparamref name="TResult"/> is a non-nullable value type.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Int32})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Nullable{System.Int32}})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Int64})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Nullable{System.Int64}})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Single})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Nullable{System.Single}})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Double})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Nullable{System.Double}})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Decimal})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max(System.Linq.ParallelQuery{System.Nullable{System.Decimal}})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the maximum value in a parallel sequence of values.
- </summary>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements and <typeparam name="TSource"/> is a non-nullable value type.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Int32}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int64})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Int64}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Single})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Single}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Double})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Double}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Decimal})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Decimal}})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Max``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Invokes in parallel a transform function on each element of a
- sequence and returns the maximum value.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TResult">The type of the value returned by <paramref name="selector"/>.</typeparam>
- <param name="source">A sequence of values to determine the maximum value of.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The maximum value in the sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements and <typeparamref name="TResult"/> is a non-nullable value type.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Int32})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- The sum or count of the elements in the sequence is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Nullable{System.Int32}})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum or count of the elements in the sequence is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Int64})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- The sum or count of the elements in the sequence is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Nullable{System.Int64}})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum or count of the elements in the sequence is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Single})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Nullable{System.Single}})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Double})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Nullable{System.Double}})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <exception cref="T:System.ArgumentNullException">
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Decimal})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average(System.Linq.ParallelQuery{System.Nullable{System.Decimal}})">
- <summary>
- Computes in parallel the average of a sequence of values.
- </summary>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- The sum or count of the elements in the sequence is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Int32}})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum or count of the elements in the sequence is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int64})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- The sum or count of the elements in the sequence is larger than <see cref="M:System.Int32.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Int64}})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- The sum or count of the elements in the sequence is larger than <see cref="M:System.Int64.MaxValue"/>.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Single})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Single}})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Double})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Double}})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Decimal})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Average``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Nullable{System.Decimal}})">
- <summary>
- Computes in parallel the average of a sequence of values that are obtained
- by invoking a transform function on each element of the input sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values that are used to calculate an average.</param>
- <param name="selector">A transform function to apply to each element.</param>
- <returns>The average of the sequence of values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="selector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Any``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Determines in parallel whether any element of a sequence satisfies a condition.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">An IEnumerable whose elements to apply the predicate to.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>
- true if any elements in the source sequence pass the test in the specified predicate; otherwise, false.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Any``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Determines whether a parallel sequence contains any elements.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The IEnumerable to check for emptiness.</param>
- <returns>true if the source sequence contains any elements; otherwise, false.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.All``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Determines in parallel whether all elements of a sequence satisfy a condition.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence whose elements to apply the predicate to.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>
- true if all elements in the source sequence pass the test in the specified predicate; otherwise, false.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Contains``1(System.Linq.ParallelQuery{``0},``0)">
- <summary>
- Determines in parallel whether a sequence contains a specified element
- by using the default equality comparer.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence in which to locate a value.</param>
- <param name="value">The value to locate in the sequence.</param>
- <returns>
- true if the source sequence contains an element that has the specified value; otherwise, false.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Contains``1(System.Linq.ParallelQuery{``0},``0,System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- Determines in parallel whether a sequence contains a specified element by using a
- specified IEqualityComparer{T}.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence in which to locate a value.</param>
- <param name="value">The value to locate in the sequence.</param>
- <param name="comparer">An equality comparer to compare values.</param>
- <returns>
- true if the source sequence contains an element that has the specified value; otherwise, false.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Take``1(System.Linq.ParallelQuery{``0},System.Int32)">
- <summary>
- Returns a specified number of contiguous elements from the start of a parallel sequence.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return elements from.</param>
- <param name="count">The number of elements to return.</param>
- <returns>
- A sequence that contains the specified number of elements from the start of the input sequence.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.TakeWhile``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Returns elements from a parallel sequence as long as a specified condition is true.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return elements from.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>
- A sequence that contains the elements from the input sequence that occur before
- the element at which the test no longer passes.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.TakeWhile``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32,System.Boolean})">
- <summary>
- Returns elements from a parallel sequence as long as a specified condition is true.
- The element's index is used in the logic of the predicate function.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return elements from.</param>
- <param name="predicate">
- A function to test each source element for a condition; the second parameter of the
- function represents the index of the source element.
- </param>
- <returns>
- A sequence that contains elements from the input sequence that occur before
- the element at which the test no longer passes.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Skip``1(System.Linq.ParallelQuery{``0},System.Int32)">
- <summary>
- Bypasses a specified number of elements in a parallel sequence and then returns the remaining elements.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return elements from.</param>
- <param name="count">The number of elements to skip before returning the remaining elements.</param>
- <returns>
- A sequence that contains the elements that occur after the specified index in the input sequence.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SkipWhile``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Bypasses elements in a parallel sequence as long as a specified
- condition is true and then returns the remaining elements.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return elements from.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>A sequence that contains the elements from the input sequence starting at
- the first element in the linear series that does not pass the test specified by
- <B>predicate</B>.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SkipWhile``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Int32,System.Boolean})">
- <summary>
- Bypasses elements in a parallel sequence as long as a specified condition is true and
- then returns the remaining elements. The element's index is used in the logic of
- the predicate function.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return elements from.</param>
- <param name="predicate">
- A function to test each source element for a condition; the
- second parameter of the function represents the index of the source element.
- </param>
- <returns>
- A sequence that contains the elements from the input sequence starting at the
- first element in the linear series that does not pass the test specified by
- <B>predicate</B>.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Concat``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``0})">
- <summary>
- Concatenates two parallel sequences.
- </summary>
- <typeparam name="TSource">The type of the elements of the input sequences.</typeparam>
- <param name="first">The first sequence to concatenate.</param>
- <param name="second">The sequence to concatenate to the first sequence.</param>
- <returns>A sequence that contains the concatenated elements of the two input sequences.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Concat``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``0})">
- <summary>
- This Concat overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TSource">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of Concat with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Concat operator would appear to be binding to the parallel implementation,
- but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SequenceEqual``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``0})">
- <summary>
- Determines whether two parallel sequences are equal by comparing the elements by using
- the default equality comparer for their type.
- </summary>
- <typeparam name="TSource">The type of the elements of the input sequences.</typeparam>
- <param name="first">A sequence to compare to <b>second</b>.</param>
- <param name="second">A sequence to compare to the first input sequence.</param>
- <returns>
- true if the two source sequences are of equal length and their corresponding elements
- are equal according to the default equality comparer for their type; otherwise, false.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SequenceEqual``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``0})">
- <summary>
- This SequenceEqual overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TSource">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">Thrown every time this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of SequenceEqual with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the SequenceEqual operator would appear to be binding to the parallel implementation,
- but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SequenceEqual``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``0},System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- Determines whether two parallel sequences are equal by comparing their elements by
- using a specified IEqualityComparer{T}.
- </summary>
- <typeparam name="TSource">The type of the elements of the input sequences.</typeparam>
- <param name="first">A sequence to compare to <paramref name="second"/>.</param>
- <param name="second">A sequence to compare to the first input sequence.</param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to use to compare elements.</param>
- <returns>
- true if the two source sequences are of equal length and their corresponding
- elements are equal according to the default equality comparer for their type; otherwise, false.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.DisposeEnumerator``1(System.Collections.Generic.IEnumerator{``0},System.Linq.Parallel.CancellationState)">
- <summary>
- A helper method for SequenceEqual to dispose an enumerator. If an exception is thrown by the disposal,
- it gets wrapped into an AggregateException, unless it is an OCE with the query's CancellationToken.
- </summary>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SequenceEqual``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- This SequenceEqual overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TSource">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <param name="comparer">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">Thrown every time this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of SequenceEqual with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the SequenceEqual operator would appear to be binding to the parallel implementation,
- but would in reality bind to sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Distinct``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns distinct elements from a parallel sequence by using the
- default equality comparer to compare values.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to remove duplicate elements from.</param>
- <returns>A sequence that contains distinct elements from the source sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Distinct``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- Returns distinct elements from a parallel sequence by using a specified
- IEqualityComparer{T} to compare values.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to remove duplicate elements from.</param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to compare values.</param>
- <returns>A sequence that contains distinct elements from the source sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Union``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``0})">
- <summary>
- Produces the set union of two parallel sequences by using the default equality comparer.
- </summary>
- <typeparam name="TSource">The type of the elements of the input sequences.</typeparam>
- <param name="first">A sequence whose distinct elements form the first set for the union.</param>
- <param name="second">A sequence whose distinct elements form the second set for the union.</param>
- <returns>A sequence that contains the elements from both input sequences, excluding duplicates.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Union``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``0})">
- <summary>
- This Union overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TSource">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of Union with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Union operator would appear to be binding to the parallel implementation,
- but would in reality bind to sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Union``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``0},System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- Produces the set union of two parallel sequences by using a specified IEqualityComparer{T}.
- </summary>
- <typeparam name="TSource">The type of the elements of the input sequences.</typeparam>
- <param name="first">A sequence whose distinct elements form the first set for the union.</param>
- <param name="second">A sequence whose distinct elements form the second set for the union.</param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to compare values.</param>
- <returns>A sequence that contains the elements from both input sequences, excluding duplicates.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Union``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- This Union overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TSource">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <param name="comparer">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of Union with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Union operator would appear to be binding to the parallel implementation,
- but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Intersect``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``0})">
- <summary>
- Produces the set intersection of two parallel sequences by using the
- default equality comparer to compare values.
- </summary>
- <typeparam name="TSource">The type of the elements of the input sequences.</typeparam>
- <param name="first"
- >A sequence whose distinct elements that also appear in <paramref name="second"/> will be returned.
- </param>
- <param name="second">
- A sequence whose distinct elements that also appear in the first sequence will be returned.
- </param>
- <returns>A sequence that contains the elements that form the set intersection of two sequences.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Intersect``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``0})">
- <summary>
- This Intersect overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TSource">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of Intersect with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Intersect operator would appear to be binding to the parallel implementation,
- but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Intersect``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``0},System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- Produces the set intersection of two parallel sequences by using
- the specified IEqualityComparer{T} to compare values.
- </summary>
- <typeparam name="TSource">The type of the elements of the input sequences.</typeparam>
- <param name="first">
- A sequence whose distinct elements that also appear in <paramref name="second"/> will be returned.
- </param>
- <param name="second">
- A sequence whose distinct elements that also appear in the first sequence will be returned.
- </param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to compare values.</param>
- <returns>A sequence that contains the elements that form the set intersection of two sequences.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Intersect``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- This Intersect overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TSource">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <param name="comparer">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of Intersect with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Intersect operator would appear to be binding to the parallel implementation,
- but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Except``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``0})">
- <summary>
- Produces the set difference of two parallel sequences by using
- the default equality comparer to compare values.
- </summary>
- <typeparam name="TSource">The type of the elements of the input sequences.</typeparam>
- <param name="first">
- A sequence whose elements that are not also in <paramref name="second"/> will be returned.
- </param>
- <param name="second">
- A sequence whose elements that also occur in the first sequence will cause those
- elements to be removed from the returned sequence.
- </param>
- <returns>A sequence that contains the set difference of the elements of two sequences.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Except``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``0})">
- <summary>
- This Except overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TSource">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of Except with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Except operator would appear to be binding to the parallel implementation,
- but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Except``1(System.Linq.ParallelQuery{``0},System.Linq.ParallelQuery{``0},System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- Produces the set difference of two parallel sequences by using the
- specified IEqualityComparer{T} to compare values.
- </summary>
- <typeparam name="TSource">The type of the elements of the input sequences.</typeparam>
- <param name="first">A sequence whose elements that are not also in <paramref name="second"/> will be returned.</param>
- <param name="second">
- A sequence whose elements that also occur in the first sequence will cause those elements
- to be removed from the returned sequence.
- </param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to compare values.</param>
- <returns>A sequence that contains the set difference of the elements of two sequences.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="first"/> or <paramref name="second"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Except``1(System.Linq.ParallelQuery{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})">
- <summary>
- This Except overload should never be called.
- This method is marked as obsolete and always throws <see cref="T:System.NotSupportedException"/> when called.
- </summary>
- <typeparam name="TSource">This type parameter is not used.</typeparam>
- <param name="first">This parameter is not used.</param>
- <param name="second">This parameter is not used.</param>
- <param name="comparer">This parameter is not used.</param>
- <returns>This overload always throws a <see cref="T:System.NotSupportedException"/>.</returns>
- <exception cref="T:System.NotSupportedException">The exception that occurs when this method is called.</exception>
- <remarks>
- This overload exists to disallow usage of Except with a left data source of type
- <see cref="T:System.Linq.ParallelQuery`1"/> and a right data source of type <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
- Otherwise, the Except operator would appear to be binding to the parallel implementation,
- but would in reality bind to the sequential implementation.
- </remarks>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.AsEnumerable``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Converts a <see cref="T:System.Linq.ParallelQuery`1"/> into an
- <see cref="T:System.Collections.Generic.IEnumerable`1"/> to force sequential
- evaluation of the query.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to type as <see cref="T:System.Collections.Generic.IEnumerable`1"/>.</param>
- <returns>The input sequence types as <see cref="T:System.Collections.Generic.IEnumerable`1"/>.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToArray``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Creates an array from a ParallelQuery{T}.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence to create an array from.</param>
- <returns>An array that contains the elements from the input sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToList``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Creates a List{T} from an ParallelQuery{T}.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence to create a List<(Of <(T>)>) from.</param>
- <returns>A List<(Of <(T>)>) that contains elements from the input sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToDictionary``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Creates a Dictionary{TKey,TValue} from a ParallelQuery{T} according to
- a specified key selector function.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">A sequence to create a Dictionary<(Of <(TKey, TValue>)>) from.</param>
- <param name="keySelector">A function to extract a key from each element.</param>
- <returns>A Dictionary<(Of <(TKey, TValue>)>) that contains keys and values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- <paramref name="keySelector"/> produces a key that is a null reference (Nothing in Visual Basic).
- -or-
- <paramref name="keySelector"/> produces duplicate keys for two elements.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToDictionary``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})">
- <summary>
- Creates a Dictionary{TKey,TValue} from a ParallelQuery{T} according to a
- specified key selector function and key comparer.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">A sequence to create a Dictionary<(Of <(TKey, TValue>)>) from.</param>
- <param name="keySelector">A function to extract a key from each element.</param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to compare keys.</param>
- <returns>A Dictionary<(Of <(TKey, TValue>)>) that contains keys and values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- <paramref name="keySelector"/> produces a key that is a null reference (Nothing in Visual Basic).
- -or-
- <paramref name="keySelector"/> produces duplicate keys for two elements.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToDictionary``3(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``0,``2})">
- <summary>
- Creates a Dictionary{TKey,TValue} from a ParallelQuery{T} according to specified
- key selector and element selector functions.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TElement">The type of the value returned by <paramref name="elementSelector"/>.</typeparam>
- <param name="source">A sequence to create a Dictionary<(Of <(TKey, TValue>)>) from.</param>
- <param name="keySelector">A function to extract a key from each element.</param>
- <param name="elementSelector">
- A transform function to produce a result element value from each element.
- </param>
- <returns>
- A Dictionary<(Of <(TKey, TValue>)>) that contains values of type <typeparamref name="TElement"/>
- selected from the input sequence
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or <paramref name="elementSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- <paramref name="keySelector"/> produces a key that is a null reference (Nothing in Visual Basic).
- -or-
- <paramref name="keySelector"/> produces duplicate keys for two elements.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToDictionary``3(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``0,``2},System.Collections.Generic.IEqualityComparer{``1})">
- <summary>
- Creates a Dictionary{TKey,TValue from a ParallelQuery{T} according to a
- specified key selector function, a comparer, and an element selector function.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TElement">The type of the value returned by <paramref name="elementSelector"/>.</typeparam>
- <param name="source">A sequence to create a Dictionary<(Of <(TKey, TValue>)>) from.</param>
- <param name="keySelector">A function to extract a key from each element.</param>
- <param name="elementSelector">A transform function to produce a result element
- value from each element.</param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to compare keys.</param>
- <returns>
- A Dictionary<(Of <(TKey, TValue>)>) that contains values of type <typeparamref name="TElement"/>
- selected from the input sequence
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or <paramref name="elementSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- <paramref name="keySelector"/> produces a key that is a null reference (Nothing in Visual Basic).
- -or-
- <paramref name="keySelector"/> produces duplicate keys for two elements.
- -or-
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToLookup``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1})">
- <summary>
- Creates an ILookup{TKey,T} from a ParallelQuery{T} according to a specified key selector function.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">The sequence to create a Lookup<(Of <(TKey, TElement>)>) from.</param>
- <param name="keySelector">A function to extract a key from each element.</param>
- <returns>A Lookup<(Of <(TKey, TElement>)>) that contains keys and values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToLookup``2(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Collections.Generic.IEqualityComparer{``1})">
- <summary>
- Creates an ILookup{TKey,T} from a ParallelQuery{T} according to a specified
- key selector function and key comparer.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <param name="source">The sequence to create a Lookup<(Of <(TKey, TElement>)>) from.</param>
- <param name="keySelector">A function to extract a key from each element.</param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to compare keys.</param>
- <returns>A Lookup<(Of <(TKey, TElement>)>) that contains keys and values.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToLookup``3(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``0,``2})">
- <summary>
- Creates an ILookup{TKey,TElement} from a ParallelQuery{T} according to specified
- key selector and element selector functions.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TElement">The type of the value returned by <paramref name="elementSelector"/>.</typeparam>
- <param name="source">The sequence to create a Lookup<(Of <(TKey, TElement>)>) from.</param>
- <param name="keySelector">A function to extract a key from each element.</param>
- <param name="elementSelector">
- A transform function to produce a result element value from each element.
- </param>
- <returns>
- A Lookup<(Of <(TKey, TElement>)>) that contains values of type TElement
- selected from the input sequence.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or <paramref name="elementSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ToLookup``3(System.Linq.ParallelQuery{``0},System.Func{``0,``1},System.Func{``0,``2},System.Collections.Generic.IEqualityComparer{``1})">
- <summary>
- Creates an ILookup{TKey,TElement} from a ParallelQuery{T} according to
- a specified key selector function, a comparer and an element selector function.
- </summary>
- <typeparam name="TSource">The type of elements of <paramref name="source"/>.</typeparam>
- <typeparam name="TKey">The type of the key returned by <paramref name="keySelector"/>.</typeparam>
- <typeparam name="TElement">The type of the value returned by <paramref name="elementSelector"/>.</typeparam>
- <param name="source">The sequence to create a Lookup<(Of <(TKey, TElement>)>) from.</param>
- <param name="keySelector">A function to extract a key from each element.</param>
- <param name="elementSelector">
- A transform function to produce a result element value from each element.
- </param>
- <param name="comparer">An IEqualityComparer<(Of <(T>)>) to compare keys.</param>
- <returns>
- A Lookup<(Of <(TKey, TElement>)>) that contains values of type TElement selected
- from the input sequence.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="keySelector"/> or <paramref name="elementSelector"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Reverse``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Inverts the order of the elements in a parallel sequence.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence of values to reverse.</param>
- <returns>A sequence whose elements correspond to those of the input sequence in reverse order.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.OfType``1(System.Linq.ParallelQuery)">
- <summary>
- Filters the elements of a ParallelQuery based on a specified type.
- </summary>
- <typeparam name="TResult">The type to filter the elements of the sequence on.</typeparam>
- <param name="source">The sequence whose elements to filter.</param>
- <returns>A sequence that contains elements from the input sequence of type <typeparamref name="TResult"/>.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Cast``1(System.Linq.ParallelQuery)">
- <summary>
- Converts the elements of a ParallelQuery to the specified type.
- </summary>
- <typeparam name="TResult">The type to convert the elements of <paramref name="source"/> to.</typeparam>
- <param name="source">The sequence that contains the elements to be converted.</param>
- <returns>
- A sequence that contains each element of the source sequence converted to the specified type.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.First``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the first element of a parallel sequence.</summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return the first element of.</param>
- <returns>The first element in the specified sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.First``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Returns the first element in a parallel sequence that satisfies a specified condition.
- </summary>
- <remarks>There's a temporary difference from LINQ to Objects, this does not throw
- ArgumentNullException when the predicate is null.</remarks>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return an element from.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>The first element in the sequence that passes the test in the specified predicate function.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- No element in <paramref name="source"/> satisfies the condition in <paramref name="predicate"/>.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.FirstOrDefault``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the first element of a parallel sequence, or a default value if the
- sequence contains no elements.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return the first element of.</param>
- <returns>
- default(<B>TSource</B>) if <paramref name="source"/> is empty; otherwise, the first element in <paramref name="source"/>.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.FirstOrDefault``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Returns the first element of the parallel sequence that satisfies a condition or a
- default value if no such element is found.
- </summary>
- <remarks>There's a temporary difference from LINQ to Objects, this does not throw
- ArgumentNullException when the predicate is null.</remarks>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return an element from.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>
- default(<B>TSource</B>) if <paramref name="source"/> is empty or if no element passes the test
- specified by <B>predicate</B>; otherwise, the first element in <paramref name="source"/> that
- passes the test specified by <B>predicate</B>.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Last``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the last element of a parallel sequence.</summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return the last element from.</param>
- <returns>The value at the last position in the source sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- <paramref name="source"/> contains no elements.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Last``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Returns the last element of a parallel sequence that satisfies a specified condition.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return an element from.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>
- The last element in the sequence that passes the test in the specified predicate function.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- No element in <paramref name="source"/> satisfies the condition in <paramref name="predicate"/>.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.LastOrDefault``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the last element of a parallel sequence, or a default value if the
- sequence contains no elements.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return an element from.</param>
- <returns>
- default(<typeparamref name="TSource"/>) if the source sequence is empty; otherwise, the last element in the sequence.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.LastOrDefault``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Returns the last element of a parallel sequence that satisfies a condition, or
- a default value if no such element is found.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return an element from.</param>
- <param name="predicate">A function to test each element for a condition.</param>
- <returns>
- default(<typeparamref name="TSource"/>) if the sequence is empty or if no elements pass the test in the
- predicate function; otherwise, the last element that passes the test in the predicate function.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Single``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the only element of a parallel sequence, and throws an exception if there is not
- exactly one element in the sequence.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return the single element of.</param>
- <returns>The single element of the input sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- The input sequence contains more than one element. -or- The input sequence is empty.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.Single``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Returns the only element of a parallel sequence that satisfies a specified condition,
- and throws an exception if more than one such element exists.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return the single element of.</param>
- <param name="predicate">A function to test an element for a condition.</param>
- <returns>The single element of the input sequence that satisfies a condition.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.InvalidOperationException">
- No element satisfies the condition in <paramref name="predicate"/>. -or- More than one element satisfies the condition in <paramref name="predicate"/>.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SingleOrDefault``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the only element of a parallel sequence, or a default value if the sequence is
- empty; this method throws an exception if there is more than one element in the sequence.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return the single element of.</param>
- <returns>
- The single element of the input sequence, or default(<typeparamref name="TSource"/>) if the
- sequence contains no elements.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.SingleOrDefault``1(System.Linq.ParallelQuery{``0},System.Func{``0,System.Boolean})">
- <summary>
- Returns the only element of a parallel sequence that satisfies a specified condition
- or a default value if no such element exists; this method throws an exception
- if more than one element satisfies the condition.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return the single element of.</param>
- <param name="predicate">A function to test an element for a condition.</param>
- <returns>
- The single element of the input sequence that satisfies the condition, or
- default(<typeparamref name="TSource"/>) if no such element is found.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> or <paramref name="predicate"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.DefaultIfEmpty``1(System.Linq.ParallelQuery{``0})">
- <summary>
- Returns the elements of the specified parallel sequence or the type parameter's
- default value in a singleton collection if the sequence is empty.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return a default value for if it is empty.</param>
- <returns>
- A sequence that contains default(<B>TSource</B>) if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.DefaultIfEmpty``1(System.Linq.ParallelQuery{``0},``0)">
- <summary>
- Returns the elements of the specified parallel sequence or the specified value
- in a singleton collection if the sequence is empty.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">The sequence to return the specified value for if it is empty.</param>
- <param name="defaultValue">The value to return if the sequence is empty.</param>
- <returns>
- A sequence that contains <B>defaultValue</B> if <paramref name="source"/> is empty; otherwise, <paramref name="source"/>.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ElementAt``1(System.Linq.ParallelQuery{``0},System.Int32)">
- <summary>
- Returns the element at a specified index in a parallel sequence.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence to return an element from.</param>
- <param name="index">The zero-based index of the element to retrieve.</param>
- <returns>The element at the specified position in the source sequence.</returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- <paramref name="index"/> is less than 0 or greater than or equal to the number of elements in <paramref name="source"/>.
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="M:System.Linq.ParallelEnumerable.ElementAtOrDefault``1(System.Linq.ParallelQuery{``0},System.Int32)">
- <summary>
- Returns the element at a specified index in a parallel sequence or a default value if the
- index is out of range.
- </summary>
- <typeparam name="TSource">The type of the elements of <paramref name="source"/>.</typeparam>
- <param name="source">A sequence to return an element from.</param>
- <param name="index">The zero-based index of the element to retrieve.</param>
- <returns>
- default(<B>TSource</B>) if the index is outside the bounds of the source sequence;
- otherwise, the element at the specified position in the source sequence.
- </returns>
- <exception cref="T:System.ArgumentNullException">
- <paramref name="source"/> is a null reference (Nothing in Visual Basic).
- </exception>
- <exception cref="T:System.AggregateException">
- One or more exceptions occurred during the evaluation of the query.
- </exception>
- <exception cref="T:System.OperationCanceledException">
- The query was canceled.
- </exception>
- </member>
- <member name="T:System.Linq.ParallelMergeOptions">
- <summary>
- Specifies the preferred type of output merge to use in a query. This is a hint only, and may not be
- respected by the system when parallelizing all queries.
- </summary>
- <remarks>
- <para>
- Use <b>NotBuffered</b> for queries that will be consumed and output as streams, this has the lowest latency
- between beginning query execution and elements being yielded. For some queries, such as those involving a
- sort (OrderBy, OrderByDescending), buffering is essential and a hint of NotBuffered or AutoBuffered will
- be ignored.
- </para>
- <para>
- Use <b>AutoBuffered</b> for most cases; this is the default. It strikes a balance between latency and
- overall performance.
- </para>
- <para>
- Use <b>FullyBuffered</b> for queries when the entire output can be processed before the information is
- needed. This option offers the best performance when all of the output can be accumulated before yielding
- any information, though it is not suitable for stream processing or showing partial results mid-query.
- </para>
- </remarks>
- </member>
- <member name="F:System.Linq.ParallelMergeOptions.Default">
- <summary>
- Use the default merge type, which is AutoBuffered.
- </summary>
- </member>
- <member name="F:System.Linq.ParallelMergeOptions.NotBuffered">
- <summary>
- Use a merge without output buffers. As soon as result elements have been computed,
- make that element available to the consumer of the query.
- </summary>
- </member>
- <member name="F:System.Linq.ParallelMergeOptions.AutoBuffered">
- <summary>
- Use a merge with output buffers of a size chosen by the system. Results
- will accumulate into an output buffer before they are available to the consumer of
- the query.
- </summary>
- </member>
- <member name="F:System.Linq.ParallelMergeOptions.FullyBuffered">
- <summary>
- Use a merge with full output buffers. The system will accumulate all of the
- results before making any of them available to the consumer of the query.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.AsynchronousChannel`1">
- <summary>
- This is a bounded channel meant for single-producer/single-consumer scenarios.
- </summary>
- <typeparam name="T">Specifies the type of data in the channel.</typeparam>
- </member>
- <member name="T:System.Linq.Parallel.SynchronousChannel`1">
- <summary>
- The simplest channel is one that has no synchronization. This is used for stop-
- and-go productions where we are guaranteed the consumer is not running
- concurrently. It just wraps a FIFO queue internally.
-
- Assumptions:
- Producers and consumers never try to enqueue/dequeue concurrently.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.EmptyEnumerable`1">
- <summary>
- We occassionally need a no-op enumerator to stand-in when we don't have data left
- within a partition's data stream. These are simple enumerable and enumerator
- implementations that always and consistently yield no elements.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.ParallelQuery`1">
- <summary>
- Represents a parallel sequence.
- </summary>
- </member>
- <member name="T:System.Linq.ParallelQuery">
- <summary>
- Represents a parallel sequence.
- </summary>
- </member>
- <member name="M:System.Linq.ParallelQuery.System#Collections#IEnumerable#GetEnumerator">
- <summary>
- Returns an enumerator that iterates through the sequence.
- </summary>
- <returns>An enumerator that iterates through the sequence.</returns>
- </member>
- <member name="M:System.Linq.ParallelQuery`1.GetEnumerator">
- <summary>
- Returns an enumerator that iterates through the sequence.
- </summary>
- <returns>An enumerator that iterates through the sequence.</returns>
- </member>
- <member name="T:System.Linq.Parallel.QueryOperatorEnumerator`2">
- <summary>
- A common enumerator type that unifies all query operator enumerators.
- </summary>
- <typeparam name="TElement"></typeparam>
- <typeparam name="TKey"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.EnumerableWrapperWeakToStrong">
- <summary>
- A simple implementation of the IEnumerable{object} interface which wraps
- a weakly typed IEnumerable object, allowing it to be accessed as a strongly typed
- IEnumerable{object}.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.IParallelPartitionable`1">
- <summary>
-
- An interface that allows developers to specify their own partitioning routines.
-
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ParallelEnumerableWrapper">
- <summary>
- A simple implementation of the ParallelQuery{object} interface which wraps an
- underlying IEnumerable, such that it can be used in parallel queries.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.ParallelEnumerableWrapper`1">
- <summary>
- A simple implementation of the ParallelQuery{T} interface which wraps an
- underlying IEnumerable{T}, such that it can be used in parallel queries.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.QueryAggregationOptions">
- <summary>
- An enum to specify whether an aggregate operator is associative, commutative,
- neither, or both. This influences query analysis and execution: associative
- aggregations can run in parallel, whereas non-associative cannot; non-commutative
- aggregations must be run over data in input-order.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.RangeEnumerable">
- <summary>
- A simple enumerable type that implements the range algorithm. It also supports
- partitioning of the indices by implementing an interface that PLINQ recognizes.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.RepeatEnumerable`1">
- <summary>
- A simple enumerable type that implements the repeat algorithm. It also supports
- partitioning of the count space by implementing an interface that PLINQ recognizes.
- </summary>
- <typeparam name="TResult"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ArrayMergeHelper`1">
- <summary>
- A special merge helper for indexible queries. Given an indexible query, we know how many elements
- we'll have in the result set, so we can allocate the array ahead of time. Then, as each result element
- is produced, we can directly insert it into the appropriate position in the output array, paying
- no extra cost for ordering.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.IMergeHelper`1">
- <summary>
- Used as a stand-in for replaceable merge algorithms. Alternative implementations
- are chosen based on the style of merge required.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="M:System.Linq.Parallel.ArrayMergeHelper`1.#ctor(System.Linq.Parallel.QuerySettings,System.Linq.Parallel.QueryResults{`0})">
- <summary>
- Instantiates the array merge helper.
- </summary>
- <param name="settings">The query settings</param>
- <param name="queryResults">The query results</param>
- </member>
- <member name="M:System.Linq.Parallel.ArrayMergeHelper`1.ToArrayElement(System.Int32)">
- <summary>
- A method used as a delegate passed into the ForAll operator
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.ArrayMergeHelper`1.Execute">
- <summary>
- Schedules execution of the merge itself.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.ArrayMergeHelper`1.GetEnumerator">
- <summary>
- Gets the enumerator over the results.
-
- We never expect this method to be called. ArrayMergeHelper is intended to be used when we want
- to consume the results using GetResultsAsArray().
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.ArrayMergeHelper`1.GetResultsAsArray">
- <summary>
- Returns the merged results as an array.
- </summary>
- <returns></returns>
- </member>
- <member name="T:System.Linq.Parallel.AsynchronousChannelMergeEnumerator`1">
- <summary>
- An enumerator that merges multiple one-to-one channels into a single output
- stream, including any necessary blocking and synchronization. This is an
- asynchronous enumerator, i.e. the producers may be inserting items into the
- channels concurrently with the consumer taking items out of them. Therefore,
- enumerating this object can cause the current thread to block.
-
- We use a biased choice algorithm to choose from our consumer channels. I.e. we
- will prefer to process elements in a fair round-robin fashion, but will
- occassionally bypass this if a channel is empty.
-
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.MergeEnumerator`1">
- <summary>
- Convenience class used by enumerators that merge many partitions into one.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="M:System.Linq.Parallel.AsynchronousChannelMergeEnumerator`1.WaitAny(System.Threading.ManualResetEventSlim[])">
- <summary>
- WaitAny simulates a Win32-style WaitAny on the set of thin-events.
- </summary>
- <param name="events">An array of thin-events (null elements permitted)</param>
- <returns>The index of the specific event in events that caused us to wake up.</returns>
- </member>
- <member name="T:System.Linq.Parallel.DefaultMergeHelper`2">
- <summary>
- The default merge helper uses a set of straightforward algorithms for output
- merging. Namely, for synchronous merges, the input data is yielded from the
- input data streams in "depth first" left-to-right order. For asynchronous merges,
- on the other hand, we use a biased choice algorithm to favor input channels in
- a "fair" way. No order preservation is carried out by this helper.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- <typeparam name="TIgnoreKey"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.MergeExecutor`1">
- <summary>
- Drives execution of an actual merge operation, including creating channel data
- structures and scheduling parallel work as appropriate. The algorithms used
- internally are parameterized based on the type of data in the partitions; e.g.
- if an order preserved stream is found, the merge will automatically use an
- order preserving merge, and so forth.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.OrderPreservingMergeHelper`2">
- <summary>
- The order preserving merge helper guarantees the output stream is in a specific order. This is done
- by comparing keys from a set of already-sorted input partitions, and coalescing output data using
- incremental key comparisons.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- <typeparam name="TKey"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1">
- <summary>
- A merge helper that yields results in a streaming fashion, while still ensuring correct output
- ordering. This merge only works if each producer task generates outputs in the correct order,
- i.e. with an Increasing (or Correct) order index.
-
- The merge creates DOP producer tasks, each of which will be writing results into a separate
- buffer.
-
- The consumer always waits until each producer buffer contains at least one element. If we don't
- have one element from each producer, we cannot yield the next element. (If the order index is
- Correct, or in some special cases with the Increasing order, we could yield sooner. The
- current algorithm does not take advantage of this.)
-
- The consumer maintains a producer heap, and uses it to decide which producer should yield the next output
- result. After yielding an element from a particular producer, the consumer will take another element
- from the same producer. However, if the producer buffer exceeded a particular threshold, the consumer
- will take the entire buffer, and give the producer an empty buffer to fill.
-
- Finally, if the producer notices that its buffer has exceeded an even greater threshold, it will
- go to sleep and wait until the consumer takes the entire buffer.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.INITIAL_BUFFER_SIZE">
- <summary>
- The initial capacity of the buffer queue. The value was chosen experimentally.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.STEAL_BUFFER_SIZE">
- <summary>
- If the consumer notices that the queue reached this limit, it will take the entire buffer from
- the producer, instead of just popping off one result. The value was chosen experimentally.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.MAX_BUFFER_SIZE">
- <summary>
- If the producer notices that the queue reached this limit, it will go to sleep until woken up
- by the consumer. Chosen experimentally.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.m_autoBuffered">
- <summary>
- Whether the producer is allowed to buffer up elements before handing a chunk to the consumer.
- If false, the producer will make each result available to the consumer immediately after it is
- produced.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.m_buffers">
- <summary>
- Buffers for the results. Each buffer has elements added by one producer, and removed
- by the consumer.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.m_producerDone">
- <summary>
- Whether each producer is done producing. Set to true by individual producers, read by consumer.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.m_producerWaiting">
- <summary>
- Whether a particular producer is waiting on the consumer. Read by the consumer, set to true
- by producers, set to false by the consumer.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.m_consumerWaiting">
- <summary>
- Whether the consumer is waiting on a particular producer. Read by producers, set to true
- by consumer, set to false by producer.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.m_bufferLocks">
- <summary>
- Each object is a lock protecting the corresponding elements in m_buffers, m_producerDone,
- m_producerWaiting and m_consumerWaiting.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.s_producerComparer">
- <summary>
- A singleton instance of the comparer used by the producer heap. Eager allocation is OK
- because if the static constructor runs, we will be using this merge.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.Producer">
- <summary>
- A structure to represent a producer in the producer heap.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.ProducerComparer">
- <summary>
- A comparer used by FixedMaxHeap(Of Producer)
-
- This comparer will be used by max-heap. We want the producer with the smallest MaxKey to
- end up in the root of the heap.
-
- x.MaxKey GREATER_THAN y.MaxKey => x LESS_THAN y => return -
- x.MaxKey EQUALS y.MaxKey => x EQUALS y => return 0
- x.MaxKey LESS_THAN y.MaxKey => x GREATER_THAN y => return +
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator">
- <summary>
- Enumerator over the results of an order-preserving pipelining merge.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.m_mergeHelper">
- <summary>
- Merge helper associated with this enumerator
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.m_producerHeap">
- <summary>
- Heap used to efficiently locate the producer whose result should be consumed next.
- For each producer, stores the order index for the next element to be yielded.
-
- Read and written by the consumer only.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.m_producerNextElement">
- <summary>
- Stores the next element to be yielded from each producer. We use a separate array
- rather than storing this information in the producer heap to keep the Producer struct
- small.
-
- Read and written by the consumer only.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.m_privateBuffer">
- <summary>
- A private buffer for the consumer. When the size of a producer buffer exceeds a threshold
- (STEAL_BUFFER_SIZE), the consumer will take ownership of the entire buffer, and give the
- producer a new empty buffer to place results into.
-
- Read and written by the consumer only.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.m_initialized">
- <summary>
- Tracks whether MoveNext() has already been called previously.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.#ctor(System.Linq.Parallel.OrderPreservingPipeliningMergeHelper{`0})">
- <summary>
- Constructor
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.MoveNext">
- <summary>
- Moves the enumerator to the next result, or returns false if there are no more results to yield.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.ThrowIfInTearDown">
- <summary>
- If the cancellation of the query has been initiated (because one or more producers
- encountered exceptions, or because external cancellation token has been set), the method
- will tear down the query and rethrow the exception.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.TryWaitForElement(System.Int32,System.Linq.Parallel.Pair{System.Int32,`0}@)">
- <summary>
- Wait until a producer's buffer is non-empty, or until that producer is done.
- </summary>
- <returns>false if there is no element to yield because the producer is done, true otherwise</returns>
- </member>
- <member name="M:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.TryGetPrivateElement(System.Int32,System.Linq.Parallel.Pair{System.Int32,`0}@)">
- <summary>
- Looks for an element from a particular producer in the consumer's private buffer.
- </summary>
- </member>
- <member name="P:System.Linq.Parallel.OrderPreservingPipeliningMergeHelper`1.OrderedPipeliningMergeEnumerator.Current">
- <summary>
- Returns the current result
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.SynchronousChannelMergeEnumerator`1">
- <summary>
- This enumerator merges multiple input channels into a single output stream. The merging process just
- goes from left-to-right, enumerating each channel in succession in its entirety.
- Assumptions:
- Before enumerating this object, all producers for all channels must have finished enqueueing new
- elements.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.HashRepartitionEnumerator`3">
- <summary>
- This enumerator handles the actual coordination among partitions required to
- accomplish the repartitioning operation, as explained above.
- </summary>
- <typeparam name="TInputOutput">The kind of elements.</typeparam>
- <typeparam name="THashKey">The key used to distribute elements.</typeparam>
- <typeparam name="TIgnoreKey">The kind of keys found in the source (ignored).</typeparam>
- </member>
- <member name="T:System.Linq.Parallel.HashRepartitionStream`3">
- <summary>
- A repartitioning stream must take input data that has already been partitioned and
- redistribute its contents based on a new partitioning algorithm. This is accomplished
- by making each partition p responsible for redistributing its input data to the
- correct destination partition. Some input elements may remain in p, but many will now
- belong to a different partition and will need to move. This requires a great deal of
- synchronization, but allows threads to repartition data incrementally and in parallel.
- Each partition will "pull" data on-demand instead of partitions "pushing" data, which
- allows us to reduce some amount of synchronization overhead.
-
- We currently only offer one form of reparitioning via hashing. This used to be an
- abstract base class, but we have eliminated that to get rid of some virtual calls on
- hot code paths. Uses a key selection algorithm with mod'ding to determine destination.
-
- @TODO: @BUG#519: consider adding a bound to the buffers. Unfortunately this can quite easily
- lead to deadlock when multiple repartitions are involved. Need a solution.
- @TODO: @BUG#504: consider amortizing synchronization overhead by enqueueing/dequeueing in chunks
- rather than single elements. Also need to be careful not to introduce deadlock.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- <typeparam name="THashKey"></typeparam>
- <typeparam name="TOrderKey"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.PartitionedStream`2">
- <summary>
- A partitioned stream just partitions some data source using an extensible
- partitioning algorithm and exposes a set of N enumerators that are consumed by
- their ordinal index [0..N). It is used to build up a set of streaming computations.
- At instantiation time, the actual data source to be partitioned is supplied; and
- then the caller will layer on top additional enumerators to represent phases in the
- computation. Eventually, a merge can then schedule enumeration of all of the
- individual partitions in parallel by obtaining references to the individual
- partition streams.
-
- This type has a set of subclasses which implement different partitioning algorithms,
- allowing us to easily plug in different partitioning techniques as needed. The type
- supports wrapping IEnumerables and IEnumerators alike, with some preference for the
- former as many partitioning algorithms are more intelligent for certain data types.
- </summary>
- <typeparam name="TElement"></typeparam>
- <typeparam name="TKey"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.IPartitionedStreamRecipient`1">
- <summary>
- IPartitionedStreamRecipient is essentially a generic action on a partitioned stream,
- whose generic type parameter is the type of the order keys in the partitioned stream.
- </summary>
- <typeparam name="TElement"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.OrderedHashRepartitionEnumerator`3">
- <summary>
- This enumerator handles the actual coordination among partitions required to
- accomplish the repartitioning operation, as explained above. In addition to that,
- it tracks order keys so that order preservation can flow through the enumerator.
- </summary>
- <typeparam name="TInputOutput">The kind of elements.</typeparam>
- <typeparam name="THashKey">The key used to distribute elements.</typeparam>
- <typeparam name="TOrderKey">The kind of keys found in the source.</typeparam>
- </member>
- <member name="T:System.Linq.Parallel.PartitionedDataSource`1">
- <summary>
- Contiguous range chunk partitioning attempts to improve data locality by keeping
- data close together in the incoming data stream together in the outgoing partitions.
- There are really three types of partitions that are used internally:
-
- 1. If the data source is indexable--like an array or List_T--we can actually
- just compute the range indexes and avoid doing any copying whatsoever. Each
- "partition" is just an enumerator that will walk some subset of the data.
- 2. If the data source has an index (different than being indexable!), we can
- turn this into a range scan of the index. We can roughly estimate distribution
- and ensure an evenly balanced set of partitions.
- @TODO: @BUG#516: we don't have indexes today. We are considering it for the future.
- 3. If we can't use 1 or 2, we instead partition "on demand" by chunking the contents
- of the source enumerator as they are requested. The unfortunate thing is that
- this requires synchronization, since consumers may be running in parallel. We
- amortize the cost of this by giving chunks of items when requested instead of
- one element at a time. Note that this approach also works for infinite streams.
-
- In all cases, the caller can request that enumerators walk elements in striped
- contiguous chunks. If striping is requested, then each partition j will yield elements
- in the data source for which ((i / s)%p) == j, where i is the element's index, s is
- a chunk size calculated by the system with the intent of aligning on cache lines, and
- p is the number of partitions. If striping is not requested, we use the same algorith,
- only, instead of aligning on cache lines, we use a chunk size of l / p, where l
- is the length of the input and p is the number of partitions.
-
- Notes:
- This is used as the default partitioning strategy by much of the PLINQ infrastructure.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.AssociativeAggregationOperator`3">
- <summary>
- The aggregation operator is a little unique, in that the enumerators it returns
- yield intermediate results instead of the final results. That's because there is
- one last Aggregate operation that must occur in order to perform the final reduction
- over the intermediate streams. In other words, the intermediate enumerators produced
- by this operator are never seen by other query operators or consumers directly.
-
- An aggregation performs parallel prefixing internally. Given a binary operator O,
- it will generate intermediate results by folding O across partitions; then it
- performs a final reduction by folding O accross the intermediate results. The
- analysis engine knows about associativity and commutativity, and will ensure the
- style of partitioning inserted into the tree is compatable with the operator.
-
- For instance, say O is + (meaning it is AC), our input is {1,2,...,8}, and we
- use 4 partitions to calculate the aggregation. Sequentially this would look
- like this O(O(O(1,2),...),8), in other words ((1+2)+...)+8. The parallel prefix
- of this (w/ 4 partitions) instead calculates the intermediate aggregations, i.e.:
- t1 = O(1,2), t2 = O(3,4), ... t4 = O(7,8), aka t1 = 1+2, t2 = 3+4, t4 = 7+8.
- The final step is to aggregate O over these intermediaries, i.e.
- O(O(O(t1,t2),t3),t4), or ((t1+t2)+t3)+t4. This generalizes to any binary operator.
-
- Beause some aggregations use a different input, intermediate, and output types,
- we support an even more generalized aggregation type. In this model, we have
- three operators, an intermediate (used for the incremental aggregations), a
- final (used for the final summary of intermediate results), and a result selector
- (used to perform whatever transformation is needed on the final summary).
- </summary>
- <typeparam name="TInput"></typeparam>
- <typeparam name="TIntermediate"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.UnaryQueryOperator`2">
- <summary>
- The base class from which all binary query operators derive, that is, those that
- have two child operators. This introduces some convenience methods for those
- classes, as well as any state common to all subclasses.
- </summary>
- <typeparam name="TInput"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.QueryOperator`1">
- <summary>
- This is the abstract base class for all query operators in the system. It
- implements the ParallelQuery{T} type so that it can be bound as the source
- of parallel queries and so that it can be returned as the result of parallel query
- operations. Not much is in here, although it does serve as the "entry point" for
- opening all query operators: it will lazily analyze and cache a plan the first
- time the tree is opened, and will open the tree upon calls to GetEnumerator.
-
- Notes:
- This class implements ParallelQuery so that any parallel query operator
- can bind to the parallel query provider overloads. This allows us to string
- together operators w/out the user always specifying AsParallel, e.g.
- Select(Where(..., ...), ...), and so forth.
- </summary>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.QueryResults`1">
- <summary>
- The QueryResults{T} is a class representing the results of the query. There may
- be different ways the query results can be manipulated. Currently, two ways are
- supported:
-
- 1. Open the query results as a partitioned stream by calling GivePartitionedStream
- and pass a generic action as an argument.
-
- 2. Access individual elements of the results list by calling GetElement(index) and
- ElementsCount. This method of accessing the query results is available only if
- IsIndexible return true.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.PartitionerQueryOperator`1">
- <summary>
- A QueryOperator that represents the output of the query partitioner.AsParallel().
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.PartitionerQueryOperator`1.GetOrdinalIndexState(System.Collections.Concurrent.Partitioner{`0})">
- <summary>
- Determines the OrdinalIndexState for a partitioner
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.PartitionerQueryOperator`1.PartitionerQueryOperatorResults">
- <summary>
- QueryResults for a PartitionerQueryOperator
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.PartitionerQueryOperator`1.OrderablePartitionerEnumerator">
- <summary>
- Enumerator that converts an enumerator over key-value pairs exposed by a partitioner
- to a QueryOperatorEnumerator used by PLINQ internally.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.PartitionerQueryOperator`1.PartitionerEnumerator">
- <summary>
- Enumerator that converts an enumerator over key-value pairs exposed by a partitioner
- to a QueryOperatorEnumerator used by PLINQ internally.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.ScanQueryOperator`1">
- <summary>
- A scan is just a simple operator that is positioned directly on top of some
- real data source. It's really just a place holder used during execution and
- analysis -- it should never actually get opened.
- </summary>
- <typeparam name="TElement"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ExceptQueryOperator`1">
- <summary>
- Operator that yields the elements from the first data source that aren't in the second.
- This is known as the set relative complement, i.e. left - right.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.BinaryQueryOperator`3">
- <summary>
- The base class from which all binary query operators derive, that is, those that
- have two child operators. This introduces some convenience methods for those
- classes, as well as any state common to all subclasses.
- </summary>
- <typeparam name="TLeftInput"></typeparam>
- <typeparam name="TRightInput"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.GroupJoinQueryOperator`4">
- <summary>
- A group join operator takes a left query tree and a right query tree, and then yields
- the matching elements between the two. This can be used for outer joins, i.e. those
- where an outer element has no matching inner elements -- the result is just an empty
- list. As with the join algorithm above, we currently use a hash join algorithm.
- </summary>
- <typeparam name="TLeftInput"></typeparam>
- <typeparam name="TRightInput"></typeparam>
- <typeparam name="TKey"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.HashJoinQueryOperatorEnumerator`5">
- <summary>
- This enumerator implements the hash-join algorithm as noted earlier.
-
- Assumptions:
- This enumerator type won't work properly at all if the analysis engine didn't
- ensure a proper hash-partition. We expect inner and outer elements with equal
- keys are ALWAYS in the same partition. If they aren't (e.g. if the analysis is
- busted) we'll silently drop items on the floor. :(
-
-
- This is the enumerator class for two operators:
- - Join
- - GroupJoin
- </summary>
- <typeparam name="TLeftInput"></typeparam>
- <typeparam name="TLeftKey"></typeparam>
- <typeparam name="TRightInput"></typeparam>
- <typeparam name="THashKey"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.IntersectQueryOperator`1">
- <summary>
- Operator that yields the intersection of two data sources.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.JoinQueryOperator`4">
- <summary>
- A join operator takes a left query tree and a right query tree, and then yields the
- matching pairs between the two. LINQ supports equi-key-based joins. Hence, a key-
- selection function for the left and right data types will yield keys of the same
- type for both. We then merely have to match elements from the left with elements from
- the right that have the same exact key. Note that this is an inner join. In other
- words, outer elements with no matching inner elements do not appear in the output.
-
- @TODO: @BUG#528: Currently we implement only a hash-join algorithm. Furthermore, we always
- choose the inner data source for the hash-table creation. There is room for
- optimization and different algorithm choices eventually.
-
- Hash-joins work in two phases:
-
- (1) Building - we build a hash-table from one of the data sources. In the case
- of this specific operator, the table is built from the hash-codes of
- keys selected via the key selector function. Because elements may share
- the same key, the table must support one-key-to-many-values.
- (2) Probing - for each element in the data source not used for building, we
- use its key to look into the hash-table. If we find elements under this
- key, we just enumerate all of them, yielding them as join matches.
-
- Because hash-tables exhibit on average O(1) lookup, we turn what would have been
- an O(n*m) algorithm -- in the case of nested loops joins -- into an O(n) algorithm.
- We of course require some additional storage to do so, but in general this pays.
- </summary>
- <typeparam name="TLeftInput"></typeparam>
- <typeparam name="TRightInput"></typeparam>
- <typeparam name="TKey"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.UnionQueryOperator`1">
- <summary>
- Operator that yields the union of two data sources.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ZipQueryOperator`3">
- <summary>
- A Zip operator combines two input data sources into a single output stream,
- using a pairwise element matching algorithm. For example, the result of zipping
- two vectors a = {0, 1, 2, 3} and b = {9, 8, 7, 6} is the vector of pairs,
- c = {(0,9), (1,8), (2,7), (3,6)}. Because the expectation is that each element
- is matched with the element in the other data source at the same ordinal
- position, the zip operator requires order preservation.
- </summary>
- <typeparam name="TLeftInput"></typeparam>
- <typeparam name="TRightInput"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.PartitionedStreamMerger`1">
- <summary>
- Partitioned stream recipient that will merge the results.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.QueryOpeningEnumerator`1">
- <summary>
- A wrapper enumerator that just opens the query operator when MoveNext() is called for the
- first time. We use QueryOpeningEnumerator to call QueryOperator.GetOpenedEnumerator()
- lazily because once GetOpenedEnumerator() is called, PLINQ starts precomputing the
- results of the query.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.QueryOpeningEnumerator`1.OpenQuery">
- <summary>
- Opens the query and initializes m_openedQueryEnumerator and m_querySettings.
- Called from the first MoveNext call.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.CountAggregationOperator`1">
- <summary>
- An inlined count aggregation and its enumerator.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.InlinedAggregationOperator`3">
- <summary>
- This class is common to all of the "inlined" versions of various aggregations. The
- inlined operators ensure that real MSIL instructions are used to perform elementary
- operations versus general purpose delegate-based binary operators. For obvious reasons
- this is a quite bit more efficient, although it does lead to a fair bit of unfortunate
- code duplication.
- </summary>
- <typeparam name="TSource"></typeparam>
- <typeparam name="TIntermediate"></typeparam>
- <typeparam name="TResult"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.InlinedAggregationOperatorEnumerator`1">
- <summary>
- A class with some shared implementation between all aggregation enumerators.
- </summary>
- <typeparam name="TIntermediate"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.DecimalAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for decimals.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.DecimalMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for decimals.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.DecimalSumAggregationOperator">
- <summary>
- An inlined sum aggregation and its enumerator, for decimals.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.DoubleAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for doubles.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.DoubleMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for doubles.
-
- Notes:
- Note that normally double.NaN < anything is false, as is anything < NaN. This would
- lead to some strangeness in Min and Max, e.g. Min({ NaN, 5.0 } == NaN, yet
- Min({ 5.0, NaN }) == 5.0! We impose a total ordering so that NaN is smaller than
- everything, including -infinity, which is consistent with Comparer_T.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.DoubleSumAggregationOperator">
- <summary>
- An inlined sum aggregation and its enumerator, for doubles.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.FloatAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for floats.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.FloatMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for floats.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.FloatSumAggregationOperator">
- <summary>
- An inlined sum aggregation and its enumerator, for floats.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.IntAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for ints.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.IntMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for ints.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.IntSumAggregationOperator">
- <summary>
- Inlined aggregations for summing up primitives (int, long, float, double, decimal), as
- well as the nullable versions of each (int?, long?, float?, double?, decimal?).
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.LongAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for longs.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.LongCountAggregationOperator`1">
- <summary>
- An inlined count aggregation and its enumerator.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.LongMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for longs.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.LongSumAggregationOperator">
- <summary>
- An inlined sum aggregation and its enumerator, for longs.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableDecimalAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for Nullable decimals.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableDecimalMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for Nullable decimals.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableDecimalSumAggregationOperator">
- <summary>
- An inlined sum aggregation and its enumerator, for nullable decimals.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableDoubleAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for Nullable doubles.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableDoubleMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for Nullable{Double}s.
-
- Notes:
- Note that normally double.NaN < anything is false, as is anything < NaN. This would
- lead to some strangeness in Min and Max, e.g. Min({ NaN, 5.0 } == NaN, yet
- Min({ 5.0, NaN }) == 5.0! We impose a total ordering so that NaN is smaller than
- everything, including -infinity, which is consistent with Comparer_T.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableDoubleSumAggregationOperator">
- <summary>
- An inlined sum aggregation and its enumerator, for nullable doubles.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableFloatAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for Nullable floats.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableFloatMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for Nullable floats.
-
- Notes:
- Note that normally float.NaN < anything is false, as is anything < NaN. This would
- lead to some strangeness in Min and Max, e.g. Min({ NaN, 5.0 } == NaN, yet
- Min({ 5.0, NaN }) == 5.0! We impose a total ordering so that NaN is smaller than
- everything, including -infinity, which is consistent with Comparer_T.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableFloatSumAggregationOperator">
- <summary>
- An inlined sum aggregation and its enumerator, for Nullable floats.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableIntAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for Nullable ints.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableIntMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for Nullable ints.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableIntSumAggregationOperator">
- <summary>
- An inlined sum aggregation and its enumerator, for Nullable ints.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableLongAverageAggregationOperator">
- <summary>
- An inlined average aggregation operator and its enumerator, for Nullable longs.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableLongMinMaxAggregationOperator">
- <summary>
- An inlined min/max aggregation and its enumerator, for Nullable{Int64}s.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NullableLongSumAggregationOperator">
- <summary>
- An inlined sum aggregation and its enumerator, for Nullable longs.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.ListQueryResults`1">
- <summary>
- Class to represent an IList{T} as QueryResults{T}
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.OrdinalIndexState">
- <summary>
- Describes the state of order preservation index associated with an enumerator.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.QuerySettings">
- <summary>
- This type contains query execution options specified by the user.
- QuerySettings are used as follows:
- - in the query construction phase, some settings may be uninitialized.
- - at the start of the query opening phase, the WithDefaults method
- is used to initialize all uninitialized settings.
- - in the rest of the query opening phase, we assume that all settings
- have been initialized.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.OrderingQueryOperator`1">
- <summary>
- Represents operators AsOrdered and AsUnordered. In the current implementation, it
- simply turns on preservation globally in the query.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.QueryExecutionOption`1">
- <summary>
- Represents operators that set various query execution options.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.AnyAllSearchOperator`1">
- <summary>
- The any/all operators work the same way. They search for the occurrence of a predicate
- value in the data source, and upon the first occurrence of such a value, yield a
- particular value. Specifically:
-
- - Any returns true if the predicate for any element evaluates to true.
- - All returns false if the predicate for any element evaluates to false.
-
- This uniformity is used to apply a general purpose algorithm. Both sentences above
- take the form of "returns XXX if the predicate for any element evaluates to XXX."
- Therefore, we just parameterize on XXX, called the qualifciation below, and if we
- ever find an occurrence of XXX in the input data source, we also return XXX. Otherwise,
- we return !XXX. Obviously, XXX in this case is a bool.
-
- This is a search algorithm. So once any single partition finds an element, it will
- return so that execution can stop. This is done with a "cancelation" flag that is
- polled by all parallel workers. The first worker to find an answer sets it, and all
- other workers notice it and quit as quickly as possible.
- </summary>
- <typeparam name="TInput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ConcatQueryOperator`1">
- <summary>
- Concatenates one data source with another. Order preservation is used to ensure
- the output is actually a concatenation -- i.e. one after the other. The only
- special synchronization required is to find the largest index N in the first data
- source so that the indices of elements in the second data source can be offset
- by adding N+1. This makes it appear to the order preservation infrastructure as
- though all elements in the second came after all elements in the first, which is
- precisely what we want.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ContainsSearchOperator`1">
- <summary>
- Contains is quite similar to the any/all operator above. Each partition searches a
- subset of elements for a match, and the first one to find a match signals to the rest
- of the partititons to stop searching.
- </summary>
- <typeparam name="TInput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.DefaultIfEmptyQueryOperator`1">
- <summary>
- This operator just exposes elements directly from the underlying data source, if
- it's not empty, or yields a single default element if the data source is empty.
- There is a minimal amount of synchronization at the beginning, until all partitions
- have registered whether their stream is empty or not. Once the 0th partition knows
- that at least one other partition is non-empty, it may proceed. Otherwise, it is
- the 0th partition which yields the default value.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.DistinctQueryOperator`1">
- <summary>
- This operator yields all of the distinct elements in a single data set. It works quite
- like the above set operations, with the obvious difference being that it only accepts
- a single data source as input.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ElementAtQueryOperator`1">
- <summary>
- ElementAt just retrieves an element at a specific index. There is some cross-partition
- coordination to force partitions to stop looking once a partition has found the
- sought-after element.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="M:System.Linq.Parallel.ElementAtQueryOperator`1.Aggregate(`0@,System.Boolean)">
- <summary>
- Executes the query, either sequentially or in parallel, depending on the query execution mode and
- whether a premature merge was inserted by this ElementAt operator.
- </summary>
- <param name="result">result</param>
- <param name="withDefaultValue">withDefaultValue</param>
- <returns>whether an element with this index exists</returns>
- </member>
- <member name="T:System.Linq.Parallel.FirstQueryOperator`1">
- <summary>
- First tries to discover the first element in the source, optionally matching a
- predicate. All partitions search in parallel, publish the lowest index for a
- candidate match, and reach a barrier. Only the partition that "wins" the race,
- i.e. who found the candidate with the smallest index, will yield an element.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ForAllOperator`1">
- <summary>
- A forall operator just enables an action to be placed at the "top" of a query tree
- instead of yielding an enumerator that some consumer can walk. We execute the
- query for effect instead of yielding a data result.
- </summary>
- <typeparam name="TInput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.GroupByQueryOperator`3">
- <summary>
- The operator type for GroupBy statements. This operator groups the input based on
- a key-selection routine, yielding one-to-many values of key-to-elements. The
- implementation is very much like the hash join operator, in which we first build
- a big hashtable of the input; then we just iterate over each unique key in the
- hashtable, yielding it plus all of the elements with the same key.
- </summary>
- <typeparam name="TSource"></typeparam>
- <typeparam name="TGroupKey"></typeparam>
- <typeparam name="TElement"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.OrderedGroupByGrouping`3">
- <summary>
- An ordered version of the grouping data structure. Represents an ordered group of elements that
- have the same grouping key.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderedGroupByGrouping`3.#ctor(`0,System.Collections.Generic.IComparer{`1})">
- <summary>
- Constructs a new grouping
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderedGroupByGrouping`3.Add(`2,`1)">
- <summary>
- Add an element
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderedGroupByGrouping`3.DoneAdding">
- <summary>
- No more elements will be added, so we can sort the group now.
- </summary>
- </member>
- <member name="P:System.Linq.Parallel.OrderedGroupByGrouping`3.System#Linq#IGrouping{TGroupKey@TElement}#Key">
- <summary>
- The key this grouping represents.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.IndexedSelectQueryOperator`2">
- <summary>
- A variant of the Select operator that supplies element index while performing the
- projection operation. This requires cooperation with partitioning and merging to
- guarantee ordering is preserved.
-
- @TODO: @PERF: @BUG#527: as an optimization, we strictly don't need order to be preserved
- all the way until the merge. If ordering is only kept for THIS operator, we
- can subsequently get rid of order preservation after executing.
- </summary>
- <typeparam name="TInput"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.IndexedWhereQueryOperator`1">
- <summary>
- A variant of the Where operator that supplies element index while performing the
- filtering operation. This requires cooperation with partitioning and merging to
- guarantee ordering is preserved.
-
- @TODO: @PERF: @BUG#527: as an optimization, we strictly don't need order to be preserved
- all the way until the merge. If ordering is only kept for THIS operator, we
- can subsequently get rid of order preservation after executing.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.LastQueryOperator`1">
- <summary>
- Last tries to discover the last element in the source, optionally matching a
- predicate. All partitions search in parallel, publish the greatest index for a
- candidate match, and reach a barrier. Only the partition that "wins" the race,
- i.e. who found the candidate with the largest index, will yield an element.
-
- @TODO: @PERF: @BUG#414: this traverses the data source in forward-order. In the future, we
- will want to traverse in reverse order, since this allows partitions to stop
- the search sooner (by watching if the current index passes below the current best).
-
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ReverseQueryOperator`1">
- <summary>
- Reverse imposes ordinal order preservation. There are normally two phases to this
- operator's execution. Each partition first builds a buffer containing all of its
- elements, and then proceeds to yielding the elements in reverse. There is a
- 'barrier' (but not a blocking barrier) in between these two steps, at which point the largest index becomes
- known. This is necessary so that when elements from the buffer are yielded, the
- CurrentIndex can be reported as the largest index minus the original index (thereby
- reversing the indices as well as the elements themselves). If the largest index is
- known a priori, because we have an array for example, we can avoid the barrier in
- between the steps.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.SelectManyQueryOperator`3">
- <summary>
- SelectMany is effectively a nested loops join. It is given two data sources, an
- outer and an inner -- actually, the inner is sometimes calculated by invoking a
- function for each outer element -- and we walk the outer, walking the entire
- inner enumerator for each outer element. There is an optional result selector
- function which can transform the output before yielding it as a result element.
-
- Notes:
- Although select many takes two enumerable objects as input, it appears to the
- query analysis infrastructure as a unary operator. That's because it works a
- little differently than the other binary operators: it has to re-open the right
- child every time an outer element is walked. The right child is NOT partitioned.
- </summary>
- <typeparam name="TLeftInput"></typeparam>
- <typeparam name="TRightInput"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="M:System.Linq.Parallel.SelectManyQueryOperator`3.WrapPartitionedStreamNotIndexed``1(System.Linq.Parallel.PartitionedStream{`0,``0},System.Linq.Parallel.IPartitionedStreamRecipient{`2},System.Linq.Parallel.QuerySettings)">
- <summary>
- A helper method for WrapPartitionedStream. We use the helper to reuse a block of code twice, but with
- a different order key type. (If premature merge occured, the order key type will be "int". Otherwise,
- it will be the same type as "TLeftKey" in WrapPartitionedStream.)
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.SelectManyQueryOperator`3.WrapPartitionedStreamIndexed(System.Linq.Parallel.PartitionedStream{`0,System.Int32},System.Linq.Parallel.IPartitionedStreamRecipient{`2},System.Linq.Parallel.QuerySettings)">
- <summary>
- Similar helper method to WrapPartitionedStreamNotIndexed, except that this one is for the indexed variant
- of SelectMany (i.e., the SelectMany that passes indices into the user sequence-generating delegate)
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.SelectQueryOperator`2">
- <summary>
- The operator type for Select statements. This operator transforms elements as it
- enumerates them through the use of a selector delegate.
- </summary>
- <typeparam name="TInput"></typeparam>
- <typeparam name="TOutput"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.SingleQueryOperator`1">
- <summary>
- Single searches the input to find the sole element that satisfies the (optional)
- predicate. If multiple such elements are found, the caller is responsible for
- producing an error. There is some degree of cross-partition synchronization to
- proactively hault the search if we ever determine there are multiple elements
- satisfying the search in the input.
- </summary>
- <typeparam name="TSource"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.SortQueryOperator`2">
- <summary>
- The query operator for OrderBy and ThenBy.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- <typeparam name="TSortKey"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.TakeOrSkipQueryOperator`1">
- <summary>
- Take and Skip either take or skip a specified number of elements, captured in the
- count argument. These will work a little bit like TakeWhile and SkipWhile: there
- are two phases, (1) Search and (2) Yield. In the search phase, our goal is to
- find the 'count'th index from the input. We do this in parallel by sharing a count-
- sized array. Each thread races to populate the array with indices in ascending
- order. This requires synchronization for inserts. We use a simple heap, for decent
- worst case performance. After a thread has scanned ‘count’ elements, or its current
- index is greater than or equal to the maximum index in the array (and the array is
- fully populated), the thread can stop searching. All threads issue a barrier before
- moving to the Yield phase. When the Yield phase is entered, the count-1th element
- of the array contains: in the case of Take, the maximum index (exclusive) to be
- returned; or in the case of Skip, the minimum index (inclusive) to be returned. The
- Yield phase simply consists of yielding these elements as output.
- </summary>
- <typeparam name="TResult"></typeparam>
- </member>
- <member name="M:System.Linq.Parallel.TakeOrSkipQueryOperator`1.OutputOrdinalIndexState">
- <summary>
- Determines the order index state for the output operator
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.TakeOrSkipWhileQueryOperator`1">
- <summary>
- Take- and SkipWhile work similarly. Execution is broken into two phases: Search
- and Yield.
-
- During the Search phase, many partitions at once search for the first occurrence
- of a false element. As they search, any time a partition finds a false element
- whose index is lesser than the current lowest-known false element, the new index
- will be published, so other partitions can stop the search. The search stops
- as soon as (1) a partition exhausts its input, (2) the predicate yields false for
- one of the partition's elements, or (3) its input index passes the current lowest-
- known index (sufficient since a given partition's indices are always strictly
- incrementing -- asserted below). Elements are buffered during this process.
-
- Partitions use a barrier after Search and before moving on to Yield. Once all
- have passed the barrier, Yielding begins. At this point, the lowest-known false
- index will be accurate for the entire set, since all partitions have finished
- scanning. This is where TakeWhile and SkipWhile differ. TakeWhile will start at
- the beginning of its buffer and yield all elements whose indices are less than
- the lowest-known false index. SkipWhile, on the other hand, will skipp any such
- elements in the buffer, yielding those whose index is greater than or equal to
- the lowest-known false index, and then finish yielding any remaining elements in
- its data source (since it may have stopped prematurely due to (3) above).
- </summary>
- <typeparam name="TResult"></typeparam>
- </member>
- <member name="M:System.Linq.Parallel.TakeOrSkipWhileQueryOperator`1.OutputOrderIndexState">
- <summary>
- Determines the order index state for the output operator
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.WhereQueryOperator`1">
- <summary>
- The operator type for Where statements. This operator filters out elements that
- don't match a filter function (supplied at instantiation time).
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- </member>
- <member name="F:System.Linq.Parallel.CancellationState.POLL_INTERVAL">
- <summary>
- Poll frequency (number of loops per cancellation check) for situations where per-1-loop testing is too high an overhead.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.CancellationState.ThrowIfCanceled(System.Threading.CancellationToken)">
- <summary>
- Throws an OCE if the merged token has been canceled.
- </summary>
- <param name="token">A token to check for cancelation.</param>
- </member>
- <member name="T:System.Linq.Parallel.SpoolingTaskBase">
- <summary>
- A spooling task handles marshaling data from a producer to a consumer. It simply
- takes data from a producer and hands it off to a consumer. This class is the base
- class from which other concrete spooling tasks derive, encapsulating some common
- logic (such as capturing exceptions).
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.QueryTask">
- <summary>
- Simple abstract task representation, allowing either synchronous and asynchronous
- execution. Subclasses override the Work API to implement the logic.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningSpoolingTask`1.PRODUCER_BUFFER_AUTO_SIZE">
- <summary>
- The number of elements to accumulate on the producer before copying the elements to the
- producer-consumer buffer. This constant is only used in the AutoBuffered mode.
-
- Experimentally, 16 appears to be sufficient buffer size to compensate for the synchronization
- cost.
- </summary>
- </member>
- <member name="F:System.Linq.Parallel.OrderPreservingPipeliningSpoolingTask`1.m_autoBuffered">
- <summary>
- Whether the producer is allowed to buffer up elements before handing a chunk to the consumer.
- If false, the producer will make each result available to the consumer immediately after it is
- produced.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderPreservingPipeliningSpoolingTask`1.#ctor(System.Linq.Parallel.QueryOperatorEnumerator{`0,System.Int32},System.Linq.Parallel.QueryTaskGroupState,System.Boolean[],System.Boolean[],System.Boolean[],System.Int32,System.Collections.Generic.Queue{System.Linq.Parallel.Pair{System.Int32,`0}}[],System.Object,System.Threading.Tasks.TaskScheduler,System.Boolean)">
- <summary>
- Constructor
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderPreservingPipeliningSpoolingTask`1.SpoolingWork">
- <summary>
- This method is responsible for enumerating results and enqueueing them to
- the output buffer as appropriate. Each base class implements its own.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderPreservingPipeliningSpoolingTask`1.Spool(System.Linq.Parallel.QueryTaskGroupState,System.Linq.Parallel.PartitionedStream{`0,System.Int32},System.Boolean[],System.Boolean[],System.Boolean[],System.Collections.Generic.Queue{System.Linq.Parallel.Pair{System.Int32,`0}}[],System.Object[],System.Threading.Tasks.TaskScheduler,System.Boolean)">
- <summary>
- Creates and begins execution of a new set of spooling tasks.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.OrderPreservingPipeliningSpoolingTask`1.SpoolingFinally">
- <summary>
- Dispose the underlying enumerator and wake up the consumer if necessary.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.OrderPreservingSpoolingTask`2">
- <summary>
- A spooling task handles marshaling data from a producer to a consumer. It's given
- a single enumerator object that contains all of the production algorithms, a single
- destination channel from which consumers draw results, and (optionally) a
- synchronization primitive using which to notify asynchronous consumers. This
- particular task variant preserves sort order in the final data.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- <typeparam name="TKey"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.QueryTaskGroupState">
- <summary>
- A collection of tasks used by a single query instance. This type also offers some
- convenient methods for tracing significant ETW events, waiting on tasks, propagating
- exceptions, and performing cancellation activities.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.SpoolingTask">
- <summary>
- A factory class to execute spooling logic.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.StopAndGoSpoolingTask`2">
- <summary>
- A spooling task handles marshaling data from a producer to a consumer. It's given
- a single enumerator object that contains all of the production algorithms, a single
- destination channel from which consumers draw results, and (optionally) a
- synchronization primitive using which to notify asynchronous consumers.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- <typeparam name="TIgnoreKey"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.PipelineSpoolingTask`2">
- <summary>
- A spooling task handles marshaling data from a producer to a consumer. It's given
- a single enumerator object that contains all of the production algorithms, a single
- destination channel from which consumers draw results, and (optionally) a
- synchronization primitive using which to notify asynchronous consumers.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- <typeparam name="TIgnoreKey"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ForAllSpoolingTask`2">
- <summary>
- A spooling task handles marshaling data from a producer to a consumer. It's given
- a single enumerator object that contains all of the production algorithms, a single
- destination channel from which consumers draw results, and (optionally) a
- synchronization primitive using which to notify asynchronous consumers.
- </summary>
- <typeparam name="TInputOutput"></typeparam>
- <typeparam name="TIgnoreKey"></typeparam>
- </member>
- <member name="M:System.Linq.Parallel.CancellableEnumerable.Wrap``1(System.Collections.Generic.IEnumerable{``0},System.Threading.CancellationToken)">
- <summary>
- Wraps an enumerable with a cancellation checker. The enumerator handed out by the source enumerable
- will be wrapped by an object that periodically checks whether a particular cancellation token has
- been cancelled. If so, the next call to MoveNext() will throw an OperationCancelledException.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.ExceptionAggregator.WrapEnumerable``1(System.Collections.Generic.IEnumerable{``0},System.Linq.Parallel.CancellationState)">
- <summary>
- WrapEnumerable.ExceptionAggregator wraps the enumerable with another enumerator that will
- catch exceptions, and wrap each with an AggregateException.
-
- If PLINQ decides to execute a query sequentially, we will reuse LINQ-to-objects
- implementations for the different operators. However, we still need to throw
- AggregateException in the cases when parallel execution would have thrown an
- AggregateException. Thus, we introduce a wrapper enumerator that catches exceptions
- and wraps them with an AggregateException.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.ExceptionAggregator.WrapQueryEnumerator``2(System.Linq.Parallel.QueryOperatorEnumerator{``0,``1},System.Linq.Parallel.CancellationState)">
- <summary>
- A variant of WrapEnumerable that accepts a QueryOperatorEnumerator{,} instead of an IEnumerable{}.
- The code duplication is necessary to avoid extra virtual method calls that would otherwise be needed to
- convert the QueryOperatorEnumerator{,} to an IEnumerator{}.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.ExceptionAggregator.ThrowOCEorAggregateException(System.Exception,System.Linq.Parallel.CancellationState)">
- <summary>
- Accepts an exception, wraps it as if it was crossing the parallel->sequential boundary, and throws the
- wrapped exception. In sequential fallback cases, we use this method to throw exceptions that are consistent
- with exceptions thrown by PLINQ when the query is executed by worker tasks.
-
- The exception will be wrapped into an AggregateException, except for the case when the query is being
- legitimately cancelled, in which case we will propagate the CancellationException with the appropriate
- token.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.ExceptionAggregator.WrapFunc``2(System.Func{``0,``1},System.Linq.Parallel.CancellationState)">
- <summary>
- Wraps a function with a try/catch that morphs all exceptions into AggregateException.
- </summary>
- <typeparam name="T">The input argument type.</typeparam>
- <typeparam name="U">The return value type.</typeparam>
- <param name="f">A function to use internally.</param>
- <param name="cancellationState">The cancellation state to use.</param>
- <returns>A new function containing exception wrapping logic.</returns>
- </member>
- <member name="T:System.Linq.Parallel.ExchangeUtilities">
- <summary>
- ExchangeUtilities is a static class that contains helper functions to partition and merge
- streams.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.NoKeyMemoizationRequired">
- <summary>
- Used during hash partitioning, when the keys being memoized are not used for anything.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.FixedMaxHeap`1">
- <summary>
- Very simple heap data structure, of fixed size.
- </summary>
- <typeparam name="TElement"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.GrowingArray`1">
- <summary>
- A growing array. Unlike List{T}, it makes the internal array available to its user.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.HashLookup`2">
- <summary>
- A simple hash map data structure, derived from the LINQ set we also use.
- </summary>
- <typeparam name="TKey">The kind of keys contained within.</typeparam>
- <typeparam name="TValue">The kind of values contained within.</typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ListChunk`1">
- <summary>
- A linked list of array chunks. Allows direct access to its arrays.
- </summary>
- <typeparam name="TInputOutput">The elements held within.</typeparam>
- </member>
- <member name="M:System.Linq.Parallel.ListChunk`1.#ctor(System.Int32)">
- <summary>
- Allocates a new root chunk of a particular size.
- </summary>
- </member>
- <member name="M:System.Linq.Parallel.ListChunk`1.Add(`0)">
- <summary>
- Adds an element to this chunk. Only ever called on the root.
- </summary>
- <param name="e">The new element.</param>
- </member>
- <member name="M:System.Linq.Parallel.ListChunk`1.GetEnumerator">
- <summary>
- Fetches an enumerator to walk the elements in all chunks rooted from this one.
- </summary>
- </member>
- <member name="P:System.Linq.Parallel.ListChunk`1.Next">
- <summary>
- The next chunk in the linked chain.
- </summary>
- </member>
- <member name="P:System.Linq.Parallel.ListChunk`1.Count">
- <summary>
- The number of elements contained within this particular chunk.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.Lookup`2">
- <summary>
- Lookup class implements the ILookup interface. Lookup is very similar to a dictionary
- except multiple values are allowed to map to the same key, and null keys are supported.
-
- Support for null keys adds an issue because the Dictionary class Lookup uses for
- storage does not support null keys. So, we need to treat null keys separately.
- Unfortunately, since TKey may be a value type, we cannot test whether the key is null
- using the user-specified equality comparer.
-
- C# does allow us to compare the key against null using the == operator, but there is a
- possibility that the user's equality comparer considers null to be equal to other values.
- Now, MSDN documentation specifies that if IEqualityComparer.Equals(x,y) returns true, it
- must be the case that x and y have the same hash code, and null has no hash code. Despite
- that, we might as well support the use case, even if it is bad practice.
-
- The solution the Lookup class uses is to treat the key default(TKey) as a special case,
- and hold its associated grouping - if any - in a special field instead of inserting it
- into a dictionary.
- </summary>
- <typeparam name="TKey"></typeparam>
- <typeparam name="TElement"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.Pair`2">
- <summary>
- A pair just wraps two bits of data into a single addressable unit. This is a
- value type to ensure it remains very lightweight, since it is frequently used
- with other primitive data types as well.
- </summary>
- <typeparam name="T"></typeparam>
- <typeparam name="U"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.PairComparer`2">
- <summary>
- PairComparer compares pairs by the first element, and breaks ties by the second
- element.
- </summary>
- <typeparam name="T"></typeparam>
- <typeparam name="U"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.ReverseComparer`1">
- <summary>
- Comparer that wraps another comparer, and flips the result of each comparison to the
- opposite answer.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.Set`1">
- <summary>
- A set for various operations. Shamelessly stolen from LINQ's source code.
- @TODO: can the Linq one be used directly now that we are in System.Core
- </summary>
- <typeparam name="TElement">The kind of elements contained within.</typeparam>
- </member>
- <member name="T:System.Linq.Parallel.Shared`1">
- <summary>
- A very simple primitive that allows us to share a value across multiple threads.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.Util">
- <summary>
- Common miscellaneous utility methods used throughout the code-base.
- </summary>
- </member>
- <member name="T:System.Linq.Parallel.Wrapper`1">
- <summary>
- A struct to wrap any arbitrary object reference or struct. Used for situations
- where we can't tolerate null values (like keys for hashtables).
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.Parallel.WrapperEqualityComparer`1">
- <summary>
- Compares two wrapped structs of the same underlying type for equality. Simply
- wraps the actual comparer for the type being wrapped.
- </summary>
- <typeparam name="T"></typeparam>
- </member>
- <member name="T:System.Linq.OrderedParallelQuery`1">
- <summary>
- Represents a sorted, parallel sequence.
- </summary>
- </member>
- <member name="M:System.Linq.OrderedParallelQuery`1.GetEnumerator">
- <summary>
- Returns an enumerator that iterates through the sequence.
- </summary>
- <returns>An enumerator that iterates through the sequence.</returns>
- </member>
- <member name="T:System.Linq.ParallelExecutionMode">
- <summary>
- The query execution mode is a hint that specifies how the system should handle
- performance trade-offs when parallelizing queries.
- </summary>
- </member>
- <member name="F:System.Linq.ParallelExecutionMode.Default">
- <summary>
- By default, the system will use algorithms for queries
- that are ripe for parallelism and will avoid algorithms with high
- overheads that will likely result in slow downs for parallel execution.
- </summary>
- </member>
- <member name="F:System.Linq.ParallelExecutionMode.ForceParallelism">
- <summary>
- Parallelize the entire query, even if that means using high-overhead algorithms.
- </summary>
- </member>
- <member name="T:System.Threading.Tasks.TaskExtensions">
- <summary>
- Provides a set of static (Shared in Visual Basic) methods for working with specific kinds of
- <see cref="T:System.Threading.Tasks.Task"/> instances.
- </summary>
- </member>
- <member name="M:System.Threading.Tasks.TaskExtensions.Unwrap(System.Threading.Tasks.Task{System.Threading.Tasks.Task})">
- <summary>
- Creates a proxy <see cref="T:System.Threading.Tasks.Task">Task</see> that represents the
- asynchronous operation of a Task{Task}.
- </summary>
- <remarks>
- It is often useful to be able to return a Task from a <see cref="T:System.Threading.Tasks.Task`1">
- Task{TResult}</see>, where the inner Task represents work done as part of the outer Task{TResult}. However,
- doing so results in a Task{Task}, which, if not dealt with carefully, could produce unexpected behavior. Unwrap
- solves this problem by creating a proxy Task that represents the entire asynchronous operation of such a Task{Task}.
- </remarks>
- <param name="task">The Task{Task} to unwrap.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown if the
- <paramref name="task"/> argument is null.</exception>
- <returns>A Task that represents the asynchronous operation of the provided Task{Task}.</returns>
- </member>
- <member name="M:System.Threading.Tasks.TaskExtensions.Unwrap``1(System.Threading.Tasks.Task{System.Threading.Tasks.Task{``0}})">
- <summary>
- Creates a proxy <see cref="T:System.Threading.Tasks.Task`1">Task{TResult}</see> that represents the
- asynchronous operation of a Task{Task{TResult}}.
- </summary>
- <remarks>
- It is often useful to be able to return a Task{TResult} from a Task{TResult}, where the inner Task{TResult}
- represents work done as part of the outer Task{TResult}. However, doing so results in a Task{Task{TResult}},
- which, if not dealt with carefully, could produce unexpected behavior. Unwrap solves this problem by
- creating a proxy Task{TResult} that represents the entire asynchronous operation of such a Task{Task{TResult}}.
- </remarks>
- <param name="task">The Task{Task{TResult}} to unwrap.</param>
- <exception cref="T:System.ArgumentNullException">The exception that is thrown if the
- <paramref name="task"/> argument is null.</exception>
- <returns>A Task{TResult} that represents the asynchronous operation of the provided Task{Task{TResult}}.</returns> /// <summary>Unwraps a Task that returns another Task.</summary>
- </member>
- </members>
- </doc>
|