- 主题:异常是 C++ 最烂最烂最烂最烂最烂最烂的设计
写框架不用异常。
【 在 tom6bj 的大作中提到: 】
: 我搞嵌入式,也不用异常,不用iostream,上位机才用.
: 我写业务逻辑是不用异常的。包括 python 也不用。
: 写框架才会用上异常。
: ...................
--
FROM 221.218.60.*
我在服务器端使用线程池+协程,似乎与客户端无关。
不使用异常。
【 在 stub 的大作中提到: 】
: 使用什么协程库呢, 使用协程, 如果想完全不堵塞, 还需要实现各种对应的协程客户端, 比如http, grpc, redis, mongo, mysql等, 如果不实现对应的协程客户端, 协程的性能是大打折扣的
--
FROM 221.218.60.*
嗯。
数据库的异步不好办,我也解决不了。
【 在 hgoldfish 的大作中提到: 】
: 你再仔细看看啊。
: 楼上说的是在服务端编程,需要实现 mysql 客户端,才能连接数据库读写数据。
: 不过用哪种协程都不好办,因为 libmariadb/libmysqlclient 实现的时候没考虑非阻塞调用,不好用。用 postgresql 就没问题。
: ...................
--
FROM 221.218.60.*
哦,关注一下。
不过主要用ORACLE,没辙。
【 在 hgoldfish 的大作中提到: 】
: 用 postgresql 就没问题。好几个协程都可以解决。
:
--
修改:ylh1969 FROM 221.218.60.*
FROM 221.218.60.*
哦,好的,学习一下。
【 在 stub 的大作中提到: 】
: 可以使用boost mysql客户端,有异步功能
--
FROM 221.218.60.*
【 在 stub 的大作中提到: 】
: 可以使用boost mysql客户端,有异步功能
豆包查了下,它是用回调函数的。改成协程,还得动点脑筋。
--
FROM 221.218.60.*
oracle的oci也可以异步操作,也是用回调函数,以前没注意过。
把回调弄进协程里,有什么好办法?
【 在 stub 的大作中提到: 】
: 可以使用boost mysql客户端,有异步功能
--
FROM 221.218.60.*
在回调函数中设置wake协程,多谢。
回调改协程的通用方法。赞。
【 在 stub 的大作中提到: 】
: 协程一般可以wait, wake
: 执行完异步操作后, 执行协程wait, 在回调函数中wake 协程
--
修改:ylh1969 FROM 221.218.60.*
FROM 221.218.60.*
思考几天,这个方法可以,但是不够透明。
就是说,一个数据库的码农,一般是熟悉业务的,也熟悉数据库调优,sql调优,但是,要求他解决系统,io开销问题,有点困难。
我是写框架的,系统问题应该在我这里解决。他们是写插件的,应用问题在他们那里解决。插件应该可以在各种框架运行,不需要他们考虑是多进程,多线程,线程池,协程,也不需要他们考虑同步异步,block,nonblock等等。就是说,框架对他们是透明的。
我也无法介入他们的数据库的使用,透明的提供数据库的异步访问方法。
【 在 stub 的大作中提到: 】
: 协程一般可以wait, wake
: 执行完异步操作后, 执行协程wait, 在回调函数中wake 协程
--
修改:ylh1969 FROM 221.218.60.*
FROM 221.218.60.*