本人对多进程和多线程不大了解,还请各位高手解答下,先谢了。问题如下:
1.多线程的并发,我查了下资料,一般解释的是:一个进程可以包含多个线程,一个线程完成一个功能,这样,进程执行的时候,它包含的多个线程可以看成同时执行。
那多线程的并发,可不可以有另外的理解:如果这时的某个进程只有一个线程,那么,同时有多个类似的进程同时启动,这时是不是就产生了多个进程下要同时完成相同任务的多个线程,这算不算多线程的并发?
下面拿售票系统举例说明下,
2.像售票系统,应该就干了一件事,就是售票(包括查询),java实现的时候是不是就是一个线程?即一个进程对应一个线程。
3.这时,同一个人同一台电脑上,打开A浏览器买票,然后又打开B浏览器买票,是不是相当于有2个进程(不是线程)?
4.那售票系统的多线程并发 ,可不可以理解为多进程的并发?
java 关于类似售票系统的多线程并发 的问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
6条回答 默认 最新
- threenewbee 2015-05-26 15:06关注
首先,要搞清楚并发和并行的不同。
如果你的计算机只有一个处理器,无论是多线程还是多进程,在某一时刻,都是只有一个线程/进程在执行,操作系统会让这些线程轮流执行,从宏观上看是并发,但是不是并行。
如果你的计算机有多个处理器(包括多核),那么每个处理器可以同时执行一个线程,可能这些线程来自一个进程,也可能来自多个进程。此时叫做并行。
如果你的服务器只有一个进程,并且其中只有一个线程,当然不可能并发,但是不等于说,不能实现一个这样的单线程的服务器同时处理多个客户端的访问要求。因为计算机处理请求的时间是非常短的,即便是单线程,从宏观上看,也足够满足多个客户端轮流请求服务器的需要。解决 无用评论 打赏 举报
悬赏问题
- ¥15 visual studio2022中文乱码无法解决
- ¥15 关于华为5g模块mh5000-31接线问题
- ¥15 keil L6007U报错
- ¥15 webapi 发布到iis后无法访问
- ¥15 初学者如何快速上手学习stm32?
- ¥15 如何自动更换布娃娃图片上的衣服
- ¥15 心理学eprime编程
- ¥15 arduino esp8266开发
- ¥15 stm32单片机通过485发送命令给驱动器控制电机转动,同样的代码f103可以控制电机转动,换到f407不能动了,但是用串口助手调试407显示发送的命令都是正确的,卡了好久了这是发送规则
- ¥15 stm32f103c8t6最小系统板+2.8寸TFTLCD板子