In a more general sense, successive command calls will not wait for the previous ones to finish. You need to either supply all the input for the (command) function to finish the called command, or use the following example to create a loop to allow the user to pick an unknown amount of options to the command.
(command "_.pline")
(while (= (logand (getvar "cmdactive") 1) 1)
(command pause)
)
(command "_.circle")