SOLIDWORKS 2016 introduced the Thread feature, which allows you to easily create standard threads as actual, fully-modeled geometry. What if you have non-standard threads you want to use? The answer is to create your own thread profiles. The process is pretty straightforward and explained in the SOLIDWORKS Help.
One of the rules for custom thread profile creation clearly states that the pitch must be larger than the thread root, and this is understandable because we're creating sweeps. If the pitch is smaller than the thread root, the sweep will intersect itself; of course, there is no such thread specification anyway, as it wouldn't make sense.
What if you need to have the thread profile and pitch be the same? This is something that, in the real world, you can achieve -- but in SOLIDWORKS, such a sweep setup would result in zero-thickness geometry, which is an error condition.
This is the quandary presented to me by a prospective customer, and I have to admit it took some experimentation to first discover a method that would give him what he was looking for, and then work through the available options to develop the easiest repeatable workflow.
In a nutshell, the secret to getting what you want is to realize that SOLIDWORKS is accurate to far more decimal places than typical manufacturing processes can discern. You can use this fact to get around the zero-thickness problem.
Say, for example, you wanted a thread profile that was 0.125" high, but you also wanted a pitch of 8 threads per inch. You can define such a profile, but when using it with the Thread command, you'll get an error. However, if you modify the pitch to be 0.125001, the feature works. For all intents and purposes, the pitch is 8 threads per inch, but geometrically, it's just a tiny amount larger -- enough for SOLIDWORKS make the sweep.
While it would be nice to be able to put this pitch directly in the custom profile definition, my experience has shown that it isn't always reliable. However, when I make the modification in the Thread feature definition (overriding the built-in pitch), it has worked every time. Note also that, depending on the size of the sketch, adding 1 millionth of an inch may not be sufficient -- but I've never had to add more than 1/100,000 of an inch to get it to go.
That's it! You now know the "secret" to create cutting threads in SOLIDWORKS 2016 and later.