You've received great tips. I just wanted to throw in something that should be obvious, but for whatever reason, it took me and my stubborn brain forever to grasp.
My last pregnancy yielded twins, bringing my children total to five...all boys. However, it took me until I had twins to realize when I tried a new method of punishment or reward system, I had to give it time.
For example, if I wanted the kids to pick up their toys when they were done, I would tell them "From now on we pick up our toys." I would be on them for three days. They still wouldn't remember to pick up their toys. I would get upset and figure they just wouldn't do it. See, I'm impatient. I just expected my kids to grasp the new concept quickly. Should I pause so you can finish laughing at me?
After having the twins something snapped into place. Okay, the twins were about four when the snap happened. It dawned on me that I had to follow through with ONE method of action. So, using the whining for an example (and as something we battled), if a kid whined and I wanted them to stop, I would tell them how to say what they wanted. If they refused, they didn't get the item. And they didn't have to correct words, they just had to use a regular voice. We went through the voice lesson every day. "This is a good voice." "Thiiiiisssss, issss whhhiiiiinnniiinnnnggg." Just so you know, your kids will laugh hysterically if you whine.
Once the ONE method was chosen, I learned to stick with it for two weeks (sleep issues I had to stick with the chosen punishment for three weeks). This means doing the same thing everyday. One day, you start to see the reward of sticking it through. It also means two weeks of consistent direction. If the kids have been well about not whining for two days and then one day they revert, don't allow it the first time it happens. Go right back to the plan.
You'll find that this works well with any issue that comes up. Sleep battles, sharing, fighting, etc.... Just focus on one issue at a time. When you have it under control move to the next. The bonus is that the kids start catching on when mom says "xyz" will happen, she means it. And, in future issues, they resolve quicker because the kids have learned you aren't going to allow it.
I know, I'm a bit slow in the learning process. But it works, no matter their age. My twins are 9 now. Bonus, I even got my older kids under control once I learned this, albeit they seemed to take a bit longer since their habits had been formed before I made this bright discovery.
Hang in there, it is doable and they will outgrow it (I have one twin who will let a whine slip once in a while, but all I have to do is look at him and he corrects his voice). I would recommend that you have a few nights out lined up to refresh your sanity.