[Prev] [Contents] [Next]

pthread_cond_destroy()--Destroy a Condition Variable

Syntax

#include <pthread.h>
int pthread_cond_destroy(pthread_cond_t *cond);
Threadsafe: Yes
Signal Safe: Yes

The pthread_cond_destroy() function destroys the condition variable specified by cond. If there are threads currently blocked on the condition variable, the pthread_cond_destroy() will fail with the EBUSY return code.

Parameters

cond
(Input) Address of the condition variable to destroy.

Authorities and Locks

None.

Return Value

0
pthread_cond_destroy() was successful.
value
pthread_cond_destroy() was not successful. value is set to indicate the error condition.

Error Conditions

If pthread_cond_destroy() was not successful, the error condition returned usually indicates one of the following errors. Under some conditions, the value returned could indicate an error other than those listed here.

[EINVAL]
The value specified for the argument is not correct.
[EBUSY]
The condition variable was in use.

Related Information

Example

#include <pthread.h>
#include <stdio.h>
#include "check.h"

pthread_cond_t      cond;

int main(int argc, char **argv)
{
  int                   rc=0;
  pthread_mutexattr_t   attr;

  printf("Entering testcase\n");

  printf("Create the condition using the condition attributes object\n");
  rc = pthread_cond_init(&cond, NULL);
  checkResults("pthread_cond_init()\n", rc);

  printf("- At this point, the condition with its default attributes\n");
  printf("- Can be used from any threads that want to use it\n");

  printf("Destroy condition\n");
  rc = pthread_cond_destroy(&cond);
  checkResults("pthread_cond_destroy()\n", rc);
  
  printf("Main completed\n");
  return 0;
}
Output

Entering testcase
Create the condition using the condition attributes object
- At this point, the condition with its default attributes
- Can be used from any threads that want to use it
Destroy condition
Main completed


[Prev] [Contents] [Next]
Copyright © 1998, IBM Corporation. All rights reserved.
Comments? Contact
rchthrds@us.ibm.com