多线程访问这两句代码,是不是要加锁?

tx183584 2011-08-03 10:20:44
	mysql_query(&_MYSQL,QuerySql);
MYSQL_RES *result=mysql_store_result(&_MYSQL);
...全文
124 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tx183584 2011-08-05
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 denieljean 的回复:]

select myisam吗?如果只有select就没不用加锁。如果有update或者delete或者insert那就得加了。
[/Quote]
为什么用select不用加锁啊
iihero 2011-08-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 tx183584 的回复:]

引用 1 楼 rucypli 的回复:

哪里加锁
如果是数据库 要看存储引擎还是sql类型

比如一个线程执行mysql_query(&_MYSQL,QuerySql);之后,另外一个线程也执行了不同的mysql_query(&_MYSQL,QuerySql);
那MYSQL_RES *result=mysql_store_result(&_MYSQL);取……
[/Quote]

如果你用的是同一个初始化的_MYSQL句柄,那无论如何是要加锁的。
如果你两个线程中用的是分别初始化的_MYSQL句柄,那就不用加锁。
WWWWA 2011-08-04
  • 打赏
  • 举报
回复
执行什么操作,表什么引擎
tx183584 2011-08-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 rucypli 的回复:]

哪里加锁
如果是数据库 要看存储引擎还是sql类型
[/Quote]
比如一个线程执行mysql_query(&_MYSQL,QuerySql);之后,另外一个线程也执行了不同的mysql_query(&_MYSQL,QuerySql);
那MYSQL_RES *result=mysql_store_result(&_MYSQL);取到数据会不同?
无天 2011-08-04
  • 打赏
  • 举报
回复
select myisam吗?如果只有select就没不用加锁。如果有update或者delete或者insert那就得加了。
tx183584 2011-08-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wwwwa 的回复:]

执行什么操作,表什么引擎
[/Quote]
额,这个我不懂.我用是mysql5.1,基本配置是默认的
rucypli 2011-08-03
  • 打赏
  • 举报
回复
哪里加锁
如果是数据库 要看存储引擎还是sql类型

56,875

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧