[fpc-devel] Feature announcement: Extension of TThread's interface
henry.vermaak at gmail.com
Sat Dec 29 15:59:38 CET 2012
On Thu, Dec 27, 2012 at 05:23:17PM +0100, Sven Barth wrote:
> - ProcessorCount (class):
> Returns the count of CPU cores detected by the RTL. This is
> based on the new global property System.GetCPUCount which needs to
> be implemented per target. Currently only a default implementation
> exists which returns "1".
On linux, this can be done with sched_getaffinity, which gives you the
number of processing units that the current process can run on. I guess
this is the number we're looking for here?
If you need all the processors, you need to read the information under
/sys/devices/system/cpu (the topology subdirectory may be handy to
filter out HTT), possibly falling back to /proc/stat and /proc/cpuinfo
Take a look at the `nproc` utility from gnu coreutils.
More information about the fpc-devel