Я использую 64 linux со свежей установкой qt 5.1.0.
Я беру пример приложения qtbase/examples/widgets/widgets/lineedits и запускаю, назовем его qt5_lineedit, также я беру аналогичное приложение из исходников qt4, собираю его с библиотекой qt4 и запускаю.
И в htop я вижу, что есть два qt5_lineedit (я запускаю только один, поэтому он использовал 2 потока) и использование памяти: VIRT 223M RES 18268.
Пока для qt4_lineedit существует только один процесс и он жрет: VIRT 126M RES 15848.
So,
- Почему qt5 по умолчанию использует два потока?
- Почему такая большая разница в размере виртуальной памяти?
Обновлять.
Несмотря на то, что qt5_lineedit использует 2 pid, это не процессы, а потоки. Итак, информация о qt4_lineedit выглядит так:
VmPeak: 130936 kB
VmSize: 130932 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 17140 kB
VmRSS: 17140 kB
VmData: 4524 kB
VmStk: 136 kB
VmExe: 28 kB
VmLib: 48232 kB
VmPTE: 220 kB
VmSwap: 0 kB
Threads: 1
Информация о qt5_lineedit выглядит так:
VmPeak: 278020 kB
VmSize: 228584 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 18268 kB
VmRSS: 18268 kB
VmData: 77468 kB
VmStk: 136 kB
VmExe: 28 kB
VmLib: 50056 kB
VmPTE: 288 kB
VmSwap: 0 kB
Threads: 2