我在Linux上有一个C ++应用程序,它将一些数据写入SSD。 应用程序以每秒100 MB的速度写入。
每秒,应用程序会将20个新文件写入磁盘。除了这20个线程之外,应用程序的其他线程还执行其他逻辑和维护。
目前,我的应用程序使用多个线程同时写入多个文件,每个线程写一个文件。
最好更改代码的设计,并让一个线程每秒写入所有20个新文件?
答案 0 :(得分:0)
这取决于您的操作系统
但是建议最多使用4-8个线程作为操作系统的线程管理,如果并行执行太多线程,大多数时候会减慢程序的速度
尝试使用更少的线程,为每个线程执行更多任务;)
您可以做的最好的事情仍然是测量程序的整体执行时间