When I do get my roof cleaned I'm going to research spraying a clear tile sealer which is supposed to help prevent growth and staining but I've heard mixed reports on its effectiveness.
My neighbours across the road had theirs cleaned and then sealed something like 8 years ago. Still moss free now. Don't know whether they know what the sealer was though.