MMKV:线程和进程处理

MMKV:线程和进程处理

本文链接:MMKV:线程和进程处理_猎羽的博客-CSDN博客


POSIX是什么?

  1. 可移植性操作系统接口,包括了系统API
  2. 定义了标准的基于UNIX操作系统的系统接口和愿景
  3. 定义了创建和操作线程的接口

POSIX线程就是POSIX标准中的线程

  1. 有C++的线程,但是一般都使用POSIX线程 pthread.h

Java中有多线程去操作MMKV,涉及到底层集合,要怎么办?

  1. 加锁

线程操作

1、线程创建

  1. pthread_create(&pid, 0, run, &i)
  2. 参数一:线程ID pthread_t pid
  3. 参数二:线程属性
  4. 参数三:线程方法 void* run(void *args)
  5. 参数四:run方法的参数 int i = 100 => 多个参数怎么办?传入结构体或者对象

2、pthread_join

  1. pthread_join(pid, 0) // 等待线程pid执行

3、pthread_exit 强制停止,不推荐

线程同步

互斥量

4、使用互斥量

queue q; //队列 // 多线程中操作queue会出现问题!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
回答: 面试中经常会问到线程和进程的区别。进程是指一个运行中的程序,它在计算机中拥有独立的内存空间和系统资源,可以进行通信、同步和竞争,并在某些情况下可能出现死锁。而线程是进程中的执行上下文或执行序列,它是为了实现在CPU上同时执行多个任务而引入的概念。与进程不同的是,线程共享进程的内存空间,可以方便地进行通信。\[3\]进程线程的区别还可以从内存结构、通信方式等方面进行深入探讨。进程进程之间不能共享内存,而线程可以共享进程的内存空间。进程之间的通信相对不方便,而线程之间的通信更加方便。进程之间的通信方式包括管道、消息队列、共享内存等,而线程之间的通信可以直接通过共享内存进行。不同的通信方式有各自的优劣点,需要根据具体的场景来选择合适的方式。\[2\]了解这些内容可以帮助你更好地回答面试中关于线程和进程的区别的问题。 #### 引用[.reference_title] - *1* *2* *3* [面试高频题:线程与进程的区别](https://blog.csdn.net/J_avaSmallWhite/article/details/111320085)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猎羽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值