brute force – What determines maximum thread-count when using Bruteforce programs?

Background

When using most brute-force tools, there is usually an option to set thread count. What is the maximum thread count we can set in those programs. Say gobuster a directory buster based in go

Question

What determines the maximum threads one could set in those options? Does it depend on how many CPU cores? But I’ve seen blog posts where people set to 20-30 threads -t 30

I also see that /proc/sys/kernel/threads-max is 255211 , so would that be the maximum we can set ?