MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / API_ROUTINE gds__thread_start

Function API_ROUTINE gds__thread_start

src/yvalve/utl.cpp:2952–2986  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2950
2951
2952int API_ROUTINE gds__thread_start(FPTR_INT_VOID_PTR* entrypoint,
2953 void* arg,
2954 int priority,
2955 int /*flags*/,
2956 void* thd_id)
2957{
2958/**************************************
2959 *
2960 * g d s _ _ t h r e a d _ s t a r t
2961 *
2962 **************************************
2963 *
2964 * Functional description
2965 * Start a thread.
2966 *
2967 **************************************/
2968
2969 int rc = 0;
2970 try
2971 {
2972 Thread thread;
2973 Thread::start((ThreadEntryPoint*) entrypoint, arg, priority, &thread);
2974
2975 if (thd_id)
2976 {
2977 *static_cast<Thread::Handle*>(thd_id) = thread.getHandle();
2978 thread.detach(false);
2979 }
2980 }
2981 catch (const status_exception& status)
2982 {
2983 rc = status.value()[1];
2984 }
2985 return rc;
2986}
2987
2988#if (defined SOLARIS ) || (defined __cplusplus)
2989} //extern "C" {

Callers

nothing calls this directly

Calls 4

startFunction · 0.50
getHandleMethod · 0.45
detachMethod · 0.45
valueMethod · 0.45

Tested by

no test coverage detected