ich bestimme im Programm die Anzahl der logischen CPU's
und weise beim Start des Programms immer die nächste CPU zu und
dann wieder von Vorne. Hilfreich bei Terminalservern
Code: Alles auswählen
nProcessor := 1
nProcessorCount := 1
.
.
.
do while _sysSetCPU(nProcessor) # 0
lMultiProcessor := .T.
nProcessorCount ++
nProcessor ++
if nProcessor >=32
nProcessor := 32
nProcessorCount := 32
exit
endif
enddo
.
.
.
FUNCTION _sysGetCPU()
LOCAL rc
rc := DllCall("Xpprt1.dll",DLL_CDECL, "_sysGetCPU")
RETURN rc
FUNCTION _sysSetCPU(nCpuMask)
LOCAL rc
nCpuMask := 2 ** (nCpuMask-1)
rc := DllCall("Xpprt1.dll",DLL_CDECL, "_sysSetCPU", nCpuMask)
RETURN rc
>32 kommt dann Fehler falsche Parameter
Wie macht Ihr das ?
Kann man mit xBase++ die restlichen 8 CPU's nutzen ?