Bottom end cheap ones usually are rather ineffective - it is easy to stick a ultrasonic transducer to a tank, but hard to design such a system to have a efficient ultrasonic energy distribution, so that you'll often end up with a very partial cleaning success.
Higher end hobbyist ones and small workshop/dentists/opticians cleaners are good for camera parts cleaning, provided you use them with suitable cleaning fluids. In my experience, they won't speed up matters compared to solvent cleaning, but they eliminate its health, fire and environmental hazards.
It is no panacea, though, as you'll have to dry and relube whatever you put in there - it is only good for completely disassembled parts. Doing ultrasonic on partially assembled components will cause more problems than it eliminates.