Java Producer Consumer Problem