Я пишу это приложение на c ++, которое использует потоки Boost и SFML для использования сокетов TCP и UDP.У меня процессор Xeon с 4 кодами, но кажется, что я использую только 1 ядро.Как я могу получить доступ к полному 4 ядрам?
Назначение потоков зависит от используемой вами ОС.Также, пожалуйста, скажите, что вы подразумеваете под "но похоже, что я использую только 1 ядро".
Однако вы можете провести некоторые исследования:
Если вы используете Windows, есть хорошая программа, которая покажет вам, сколько потоков запущено в вашем приложении, какой поток связан с конкретным ядром HW и использованием (щелкните вкладку свойств и потоков):http://technet.microsoft.com/en-us/sysinternals/bb896653
Какую работу фактически выполняют ваши темы?Возможно, у вас есть какое-то состояние гонки, такое как истечение потоков и т. Д.
AFAIK Нет смысла создавать несколько потоков для отправки некоторых данных только потому, что все данные передаются через драйвер ядра и сериализуются вконец.
BR