Just use some delay so that google maps and deallocate some memory to have memory for new marker
DispatchQueue.main.asyncAfter(deadline: .now()+0.1, execute: { // Assign your map view to marker marker.map = self.mapView })