Հետ
Ծրագրավորում և բաց կոդ

WXL. ինչպես ստեղծել օբյեկտներ 15 անգամ ավելի արագ

Habr
Advertisement468 × 90
WXL. ինչպես ստեղծել օբյեկտներ 15 անգամ ավելի արագ

Հոդվածում քննարկվում է WinUI 3-ի վրա հիմնված GUI հավելվածներում հիշողության հատկացման գործընթացի օպտիմալացումը։ Հեղինակը նշում է, որ ստանդարտ համակարգային կույտը (heap) ավելորդ է միաթել (STA) սցենարների համար, քանի որ այն ռեսուրսներ է ծախսում թելերի անվտանգության ապահովման վրա, որն այս համատեքստում անհրաժեշտ չէ։ Որպես լուծում ներկայացվում է sta_memory_pool-ը՝ wxl գրադարանի համար նախատեսված մասնագիտացված ալոկատոր, որն ապահովում է 15–16 անգամ ավելի բարձր արտադրողականություն։ Տեխնիկական իրականացումը ներառում է lzcnt հրահանգի օգտագործումը չափերի դասերը արագ որոշելու համար, ֆունկցիաների ինքնակարգավորվող աղյուսակների կիրառումը կոդի «թեժ» ուղիների օպտիմալացման համար և գծային հատկացման մեթոդները՝ գործարկման ժամանակ ինտերֆեյսի արձագանքողականությունը բարձրացնելու համար։ Հոդվածը մանրամասն նկարագրում է ալոկատորի ներքին կառուցվածքը և բարձր արտադրողականություն ունեցող հավելվածներում հիշողության հետ աշխատելիս ծախսերը նվազագույնի հասցնելու մոտեցումները։

This is a summary. Read the full article at the original source:

Habr
Advertisement468 × 90
Share
Ծրագրավորում և բաց կոդ

Կապակցված

Գերմանական պաշտպանական Rheinmetall ընկերությունը պաշտոնապես բացել է իր OnboardAPI-ի փաստաթղթերը, որը հանդիսանում է Battlesuite կապակցված զենքի համակար…

Hacker News (YC)
Advertisement970 × 250