Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 3255|Svar: 2

[Kilde] .NET/C# Høj ydeevne samler flere filer til én fil

[Kopier link]
Opslået den 2024-2-14 12:04:26 | | | |
Krav: Når store filer uploades i chunks, skal backend fusionere forskellige blokke til én fil i rækkefølge, eller når arkivfilen skæres ud, slås de klippede filer sammen med kildefilen.

Linux bruger split-fil-skæringssplits
https://www.itsvse.com/thread-10716-1-1.html

Forbered først to 100M-filer til test med følgende kommando:

Windows opretter en fil af den angivne størrelse
https://www.itsvse.com/thread-10732-1-1.html

Koden er som følger:


To forskellige sammenfletningsscenarier blev testet. Som vist nedenfor:



Start test med VS 2022 debug -> Profiler -> sæt kryds ved ".NET Object Allocation Trace":



Merge1 samlet størrelse er: 16.778.034, MERGE2 samlet størrelse er: 164.270,Den samlede allokering viser, at merge1 er 102 gange større end merge2, og jo større den er, desto dårligere er præstationen

Brug PerfView til at se CPU-stakke og GC Heap Net Mem-stakke-analyser separat, som vist i følgende figur:



Bemærkning:Inc% - Inklusiv omkostning udtrykkes som en procentdel af de samlede omkostninger for alle prøver(100% for ROOT-noder). Det kan sorteres efter det.





Tidligere:Windows opretter en fil af den angivne størrelse
Næste:Introduktion og forskel mellem JIT- og AOT-kompilering i .NET
 Udlejer| Opslået den 2024-2-14 12:09:30 |
Test med VS 2022 Debug -> Performance Profiler -> sæt kryds ved "Memory Usage":

  • merge1 optager 808MB, når den udføres
  • Merge2 optager 12MB, når den køres




Hvis merge2-metoden udføres alene, starter programmet 6 MB og optager altid 6 MB under funktionsudførelsen og efter afslutningen.
 Udlejer| Opslået den 1-1-2025 10:20:06 |
Optimer skrivestilen

Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com