Currency Trading Prices

When you sell a stock do you have to wait for a buyer until you actually get your money?
I know with currency trading the market is so liquid that any closes of positions are done instantly, is this so with stocks as well?
For example:
Jim wants to sell 500 shares of Grandma’s butter Company
Does Jim simply close his position (sell his shares), or does Jim have to wait until someone wants to buy those shares at whatever price?
At whatever price he is selling them for*
It’ll vary from company to company. Pay attention to the volume associated with that particular stock. The higher the volume the more likely the transaction will be instant. Also, you need to be aware of the bid and ask prices. It’s recommended that you choose what price your willing to sell and to never use market prices to sell.
Depending on how popular Grandma’s Butter Company is may determine how quickly the shares sell. You have to put the shares up for sale before anyone can buy. If you choose a market order to sell, then the buyer could potentially get the stock at whatever price. Even a price you may not be happy with (too low). Set your limit. Eg. if current price of stock is 12.81 and it’s going down. If someone asks 10.00 for the stocks, they could sell on you leaving you with a 2.81 loss per share on a market order. If you set your limit to 12.50, your potential loss could be 0.31 per share. Again, depending on the volume of the stock may determine if the transaction is instant or does not happen at all.
Trading reversal bars systems in forex