Mental health services are "straining at the seams" to cope with the growing number of people with mental illnesses, according to a report published on Monday. As well as the immense distress caused to the millions of people with mental ill-health and their families, mental disorders cost the economy more than £100bn a year, according to calculations by the Mental Health Foundation. And unless the prevalence of mental illness falls, 2 million more adults and 100,000 more children will need treatment in 2030 compared with the figures for this year.

The report is published as Professor Dinesh Bhugra, the former president of the Royal College of Psychiatrists, warns in an article in Society Guardian this week that mental health units run by both the NHS and independent sector providers have begun to run out of beds.

"Mental health services have been under an inordinate pressure over the past few weeks, with no inpatient beds in the public or private sector available in the whole of England according to several clinicians", he says.

Services are under pressure because of the ageing and growing population, persistently high rates of disorders among all age groups, tight finances in the NHS and patients who have both mental and physical health problems.

More effort needs to be put into preventing mental illness in the first place, said Bhugra, who is also the president-elect of the World Psychiatric Association and co-chair of the panel that drew up the report.

"Lacking a 'cure' for mental illness, a reduction in the number of people across the UK developing mental disorders appears to us to be the only way that mental health services will adequately cope with demand in 20-30 years' time," he said.