2
을 닫아야 할
여기 몽고의 cashbash을 사용하고하는 것은때 우리가 MongoConnection
case class A (id:String,name:String)
class InsertClassA(a:A)
{
def inserA()={
val mongoClient=MongoClient(hostName,port)
//get collection and insert record in mongo
mongoClient.close()
}
}
class UpdateClassA(a:A)
{
def UpdateA()={
val mongoClient=MongoClient(hostName,port)
//get collection and update record in mongo
mongoClient.close()
}
}
class DeleteClassA(a:A)
{
def deleteA()={
val mongoClient=MongoClient(hostName,port)
//get collection and delete record in mongo
mongoClient.close()
}
}
object test extends App {
val a =A("123","bob")
val insert =new InsertClassA(a)
val update =new UpdateClassA(a)
val delete =new DeleteClassA(a)
insert.insertA()
update.UpdateA()
delete.deleteA()
}
나는 내가 mongoConnection을 닫아야 할 때 알고 싶은 내 코드? 위의 접근 방식이 맞습니까? 어떤 리소스를 낭비하지 말고 올바른 방법으로 mongoCLient 인스턴스를 활용할 수있는 올바른 방법이 있다면
우리가 열어두면 자원을 낭비 할 것입니까? – swaheed
아닙니다. 모든 시간을 다시 할당하면 가비지 수집기와 새 객체 생성에 추가로드가 발생하지만 동일한 양의 메모리/소켓 핸들을 가지게됩니다. 단일 인스턴스가있는 경우 인스턴스를 한 번만 할당하면 CPU에 훨씬 적은 오버 헤드가 발생합니다. – mtj