您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ unguard函数代码示例

51自学网 2021-06-03 09:09:41
  C++
这篇教程C++ unguard函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中unguard函数的典型用法代码示例。如果您正苦于以下问题:C++ unguard函数的具体用法?C++ unguard怎么用?C++ unguard使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了unguard函数的25个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: guard

void ipAddrToAsciiEnginePrivate::run (){    epicsGuard < epicsMutex > guard ( this->mutex );    while ( ! this->exitFlag ) {        {            epicsGuardRelease < epicsMutex > unguard ( guard );            this->laborEvent.wait ();        }        while ( true ) {            ipAddrToAsciiTransactionPrivate * pItem = this->labor.get ();            if ( ! pItem ) {                break;            }            osiSockAddr addr = pItem->addr;            this->pCurrent = pItem;                if ( this->exitFlag )            {                sockAddrToDottedIP ( & addr.sa, this->nameTmp,                     sizeof ( this->nameTmp ) );            }            else {                epicsGuardRelease < epicsMutex > unguard ( guard );                // depending on DNS configuration, this could take a very long time                // so we release the lock                sockAddrToA ( &addr.sa, this->nameTmp, sizeof ( this->nameTmp ) );            }            // the ipAddrToAsciiTransactionPrivate destructor is allowed to            // set pCurrent to nill and avoid blocking on a slow DNS             // operation            if ( ! this->pCurrent ) {                continue;            }            this->callbackInProgress = true;            {                epicsGuardRelease < epicsMutex > unguard ( guard );                // dont call callback with lock applied                this->pCurrent->pCB->transactionComplete ( this->nameTmp );            }            this->callbackInProgress = false;            if ( this->pCurrent ) {                this->pCurrent->pending = false;                this->pCurrent = 0;            }            if ( this->cancelPendingCount  ) {                this->destructorBlockEvent.signal ();            }        }    }}
开发者ID:ukaea,项目名称:epics,代码行数:55,


示例2: LGLTracer_glProgramParameteri

void LGLAPI LGLTracer_glProgramParameteri( GLuint program, GLenum pname, GLint value ){	guard();	APIHook.glProgramParameteri( program, pname, value );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例3: guard

void clASELoader::ASE_ReadTVertexList( iIStream* FStream, clVAMender* Mender ){	guard();#ifdef ASE_HEAVY_DEBUG	Env->Logger->Log( L_DEBUG, "Reading Tvertex list..." );#endif	char Keyword[32];	while ( !FStream->Eof() )	{		LString Line = FStream->ReadLineTrimLeadSpaces();		if ( LStr::ContainsSubStr( Line, "}" ) )		{			break;		}		else if ( LStr::StartsWith( Line, ASE_MeshTVertex ) )		{			int Index;			float U, V, W;			sscanf( Line.c_str(), "%s %d %f %f %f", Keyword, &Index, &U, &V, &W );			Mender->EmitTextureVertex( Index, LVector3( U, 1.0f - V, W ) );		}		else		{			FATAL_MSG( "Unexpected token in " + ASE_MeshTVertexList + " : " + Line );		}	}	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:35,


示例4: unguard

void getCallback::exception (    epicsGuard < epicsMutex > & guard,    int status, const char * /* pContext */,     unsigned type, arrayElementCount count ){    if ( status != ECA_CHANDESTROY ) {        struct event_handler_args args;        args.usr = this->pPrivate;        args.chid = & this->chan;        args.type = type;        args.count = count;        args.status = status;        args.dbr = 0;        caEventCallBackFunc * pFuncTmp = this->pFunc;        // fetch client context and destroy prior to releasing        // the lock and calling cb in case they destroy channel there        this->chan.getClientCtx().destroyGetCallback ( guard, *this );        {            epicsGuardRelease < epicsMutex > unguard ( guard );            ( *pFuncTmp ) ( args );        }    }    else {        this->chan.getClientCtx().destroyGetCallback ( guard, *this );    }}
开发者ID:A2-Collaboration,项目名称:epics,代码行数:26,


示例5: LGLTracer_glBindVertexArray

void LGLAPI LGLTracer_glBindVertexArray( GLuint array ){	guard();	APIHook.glBindVertexArray( array );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例6: LGLTracer_glVertexAttribPointer

void LGLAPI LGLTracer_glVertexAttribPointer( GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* pointer ){	guard();	APIHook.glVertexAttribPointer( index, size, type, normalized, stride, pointer );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例7: LGLTracer_glTexParameteri

void LGLAPI LGLTracer_glTexParameteri( GLenum target, GLenum pname, GLint param ){	guard( "0x%X, 0x%X, %i", target, pname, param );	APIHook.glTexParameteri( target, pname, param );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例8: LGLTracer_glTexParameterf

void LGLAPI LGLTracer_glTexParameterf( GLenum target, GLenum pname, GLfloat param ){	guard();	APIHook.glTexParameterf( target, pname, param );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例9: LGLTracer_glTexImage3D

void LGLAPI LGLTracer_glTexImage3D( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels ){	guard();	APIHook.glTexImage3D( target, level, internalformat, width, height, depth, border, format, type, pixels );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例10: LGLTracer_glTexSubImage2D

void LGLAPI LGLTracer_glTexSubImage2D( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels ){	guard();	APIHook.glTexSubImage2D( target, level, xoffset, yoffset, width, height, format, type, pixels );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例11: LGLTracer_glShaderSource

void LGLAPI LGLTracer_glShaderSource( GLuint shader, GLsizei count, const GLchar* *string, const GLint* length ){	guard();	APIHook.glShaderSource( shader, count, string, length );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例12: LGLTracer_glReadPixels

void LGLAPI LGLTracer_glReadPixels( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels ){	guard();	APIHook.glReadPixels( x, y, width, height, format, type, pixels );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例13: LGLTracer_glReadBuffer

void LGLAPI LGLTracer_glReadBuffer( GLenum mode ){	guard();	APIHook.glReadBuffer( mode );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例14: LGLTracer_glValidateProgram

void LGLAPI LGLTracer_glValidateProgram( GLuint program ){	guard();	APIHook.glValidateProgram( program );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例15: LGLTracer_glBindTexture

void LGLAPI LGLTracer_glBindTexture( GLenum target, GLuint texture ){	guard( "0x%X, %u", target, texture );	APIHook.glBindTexture( target, texture );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例16: LGLTracer_glUniform1f

void LGLAPI LGLTracer_glUniform1f( GLint location, GLfloat v0 ){	guard( "%i, %f", location, v0 );	APIHook.glUniform1f( location, v0 );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例17: LGLTracer_glViewport

void LGLAPI LGLTracer_glViewport( GLint x, GLint y, GLsizei width, GLsizei height ){	guard();	APIHook.glViewport( x, y, width, height );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例18: LGLTracer_glBindFramebuffer

void LGLAPI LGLTracer_glBindFramebuffer( GLenum target, GLuint framebuffer ){	guard();	APIHook.glBindFramebuffer( target, framebuffer );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例19: guard

ipAddrToAsciiTransactionPrivate::~ipAddrToAsciiTransactionPrivate (){    epicsGuard < epicsMutex > guard ( this->engine.mutex );    while ( this->pending ) {        if ( this->engine.pCurrent == this &&                 this->engine.callbackInProgress &&                 ! this->engine.thread.isCurrentThread() ) {            assert ( this->engine.cancelPendingCount < UINT_MAX );            this->engine.cancelPendingCount++;            {                epicsGuardRelease < epicsMutex > unguard ( guard );                this->engine.destructorBlockEvent.wait ();            }            assert ( this->engine.cancelPendingCount > 0u );            this->engine.cancelPendingCount--;            if ( ! this->pending ) {                if ( this->engine.cancelPendingCount ) {                    this->engine.destructorBlockEvent.signal ();                }                break;            }        }        else {            if ( this->engine.pCurrent == this ) {                this->engine.pCurrent = 0;            }            else {                this->engine.labor.remove ( *this );            }            this->pending = false;        }    }}
开发者ID:A2-Collaboration,项目名称:epics,代码行数:33,


示例20: LGLTracer_glUniform1i

void LGLAPI LGLTracer_glUniform1i( GLint location, GLint v0 ){	guard();	APIHook.glUniform1i( location, v0 );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例21: LGLTracer_glUniform1iv

void LGLAPI LGLTracer_glUniform1iv( GLint location, GLsizei count, const GLint* v0 ){	guard();	APIHook.glUniform1iv( location, count, v0 );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例22: LGLTracer_glUniform4fv

void LGLAPI LGLTracer_glUniform4fv( GLint location, GLsizei count, const GLfloat* value ){	guard();	APIHook.glUniform4fv( location, count, value );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例23: LGLTracer_glUniformBlockBinding

void LGLAPI LGLTracer_glUniformBlockBinding( GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding ){	guard();	APIHook.glUniformBlockBinding( program, uniformBlockIndex, uniformBlockBinding );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例24: LGLTracer_glUniformMatrix4fv

void LGLAPI LGLTracer_glUniformMatrix4fv( GLint location, GLsizei count, GLboolean transpose, const GLfloat* value ){	guard();	APIHook.glUniformMatrix4fv( location, count, transpose, value );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,


示例25: LGLTracer_glBindFragDataLocation

void LGLAPI LGLTracer_glBindFragDataLocation( GLuint program, GLuint color, const GLchar* name ){	guard();	APIHook.glBindFragDataLocation( program, color, name );	CheckRendererError( "" );	unguard();}
开发者ID:berezhkovskaya,项目名称:Carousel3D,代码行数:7,



注:本文中的unguard函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ unhandled_signal函数代码示例
C++ ungetch函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。