int pthread_mutex_init的获取互斥锁的范围

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了int pthread_mutex_init的获取互斥锁的范围相关的知识,希望对你有一定的参考价值。

参考技术A

pthread_mutexattr_getpshared(3C)可用来返回由 pthread_mutexattr_setpshared() 定义的互斥锁变量的范围。
pthread_mutexattr_getpshared 语法
int pthread_mutexattr_getpshared(pthread_mutexattr_t *mattr, int *pshared);
#include <pthread.h>
pthread_mutexattr_t mattr;
int pshared, ret;/* get pshared of mutex */
ret = pthread_mutexattr_getpshared(&mattr, &pshared);
此函数可为属性对象 mattr 获取 pshared 的当前值。该值为 PTHREAD_PROCESS_SHARED 或 PTHREAD_PROCESS_PRIVATE。
pthread_mutexattr_getpshared 返回值
pthread_mutexattr_getpshared() 成功完成之后会返回零。其他任何返回值都表示出现了错误。如果出现以下情况,该函数将失败并返回对应的值。
EINVAL 描述: 由 mattr 指定的值无效。

int位数的获取及int类型转char *

C语言获取int位数:

int intlen(int num)
{
/*
参数:要获取长度的int类型数据
返回值:返回长度
*/
  int tmpn=num;
  int len=1;
  while(tmpn/=10)
    len++;
  return len;
}

C语言int类型转char *类型:

void intostr(char *dest,int num,int intlen)
{
/*
参数:
  dest---将int转换为char *后的存储位置
  num---要转换的int类型值
  intlen---int类型长度
*/
  int tmpn2=num;
  char tmpc[intlen+1];
  int i=intlen-1;
  tmpc[intlen]=‘\0‘;
  while(tmpn2)
  {
    tmpc[i]=48+(tmpn2%10);
    if(!(tmpn2/=10))
    tmpc[i-1]=40+tmpn2;
    i--;
  }
  memcpy(dest,tmpc,sizeof(tmpc));
}

例:

/////////////////////////////////////////////////////////////////////////////////////////////////////

#include <stdio.h>
#include <string.h>

int intlen(int num)
{
  int tmpn=num;
  int len=1;
  while(tmpn/=10)
  len++;
  return len;
}

void intostr(char *dest,int num,int intlen)
{
  int tmpn2=num;
  char tmpc[intlen+1];
  int i=intlen-1;
  tmpc[intlen]=‘\0‘;
  while(tmpn2)
  {
    tmpc[i]=48+(tmpn2%10);
    if(!(tmpn2/=10))
    tmpc[i-1]=40+tmpn2;
    i--;
  }
  memcpy(dest,tmpc,sizeof(tmpc));
}

int main()
{
  int num=1234567;
  char str[intlen(num)+1];
  intostr(str,num,intlen(num));
  printf("%s\n",str);
  return 0;
}

/////////////////////////////////////////////////////////////////////////////////////////////////////

以上是关于int pthread_mutex_init的获取互斥锁的范围的主要内容,如果未能解决你的问题,请参考以下文章

int pthread_mutex_init的设置互斥锁类型的属性

ubuntu没有man pthread_mutex_init

ubuntu下 pthread_mutex_init man中查不到

ubuntu下 pthread_mutex_init man中查不到

互斥锁 pthread_mutex_init()函数

互斥锁pthread_mutex_init()函数