Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mungkin melepaskan kunci 'kunci' yang tidak dipantau dalam fungsi 'func'.
Komentar
Peringatan C26167 menyerupan peringatan C26117 kecuali bahwa tingkat keyakinan lebih rendah. Misalnya, fungsi mungkin berisi kesalahan anotasi.
Contoh
Kode berikut akan menghasilkan C26167 dan C26110.
typedef struct _DATA {
CRITICAL_SECTION cs;
} DATA;
_Releases_lock_(p->cs) void Leave(DATA* p) {
LeaveCriticalSection(&p->cs); // OK
}
void ReleaseUnheldLock(DATA* p) { // Warning C26167
int i = 0;
Leave(p); // Warning C26110
}
Kode berikut akan memperbaiki peringatan ini.
typedef struct _DATA {
CRITICAL_SECTION cs;
} DATA;
_Releases_lock_(p->cs) void Leave(DATA* p) {
LeaveCriticalSection( &p->cs );
}
void ReleaseUnheldLock( DATA* p ) {
EnterCriticalSection( &p->cs );
int i = 0;
Leave(p);
}