Logga in med Microsoft
Logga in eller skapa ett konto.
Hej,
Välj ett annat konto.
Du har flera konton
Välj det konto som du vill logga in med.

Introduktion

Den här artikeln beskrivs ett problem där enn-undantag uppstår när flera trådar anropa funktionen C körning ”atexit” på samma gång i Windows Embedded kompakt 7. Det finns en uppdatering som löser problemet. Alla tidigare utgivna uppdateringar för den här produkten måste installeras innan du installerar denna uppdatering.

Symptom

När flera trådar anropa funktionen C Runtime- atexit i Windows Embedded kompakt 7 samtidigt, kan det uppstå ett undantag. Undantaget när kod som anropar funktionen atexit inte serialiserad eller funktionen atexit infogas av kompilatorn.

Orsak

Problemet beror på att funktionen atexit C-kör tid inte är trådsäkert. Tabellen minnet använder funktionen skadas.

Lösning

Information om programvara

En programuppdatering som stöds är nu tillgänglig från Microsoft som Windows Embedded kompakt 7 Monthly Update (juni 2017).

Obs! Windows Embedded kompakt 7 månatliga uppdateringen kan hämtas från följande Microsoft Download Center-webbplats:

Windows Embedded kompakt 7 uppdateringar

Förutsättningar

Den här uppdateringen stöds endast om alla tidigare utgivna uppdateringar för produkten har installerats.

Krav på omstart

När du har installerat den här uppdateringen måste du utföra en ren build-version av hela plattformen. Genom att använda någon av följande metoder:

  • Klicka på Ren lösningBuild -menyn och sedan på Build Solution.

  • Klicka på Återskapa lösningBuild -menyn.

Du behöver inte starta om datorn när du har installerat denna uppdatering.

Information om vad uppdateringen ersätter

Den här uppdateringen ersätter inte några andra uppdateringar.

Filinformation

Eftersom detta är en fullständig wave-version. Nästan alla binärfiler som påverkas av den här versionen.

Följande källfiler som påverkas av den här utgåvan::

private\winceos\COREOS\core\corelibc\crtw32\startup\cexit.cpp
private\winceos\COREOS\core\corelibc\crtw32\startup\onexit.c

Mer information

I en flertrådsmiljö skadas funktionen tabeller av atexit av ett annat anrop av atexit på grund av icke-tråd säkerhet. Detta kan leda till minne korruption och undantag. Funktionen atexit används för att registrera en rutin som körs när programmet avslutas eller inaktiverar en DLL-fil. Fel i tråd säkerhet kan leda till ändring av detta avsluta rutinen och avsluta funktionen tabeller är skadad.

Referenser

Lär dig mer om den terminologi som Microsoft använder för att beskriva programuppdateringar.

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.

Hade du nytta av den här informationen?

Hur nöjd är du med språkkvaliteten?
Vad påverkade din upplevelse?
Genom att trycka på skicka, kommer din feedback att användas för att förbättra Microsofts produkter och tjänster. IT-administratören kan samla in denna data. Sekretesspolicy.

Tack för din feedback!

×