안녕하세요 어제 같은 글 올렸는데 그때는 정보가 부족했던 듯해서
이번에는 더 많은 정보를 가져왔습니다.
일단 어떻게 메모리 문제가 발생하는지 보여드리도록 하겠습니다.
아래는 일반적인 메모리 상태입니다.
저희가 먼저 볼 것은 저기 위에 있는 nwjs 부분입니다.
일반적인 경우에는 CPU는 17퍼센트 메모리는 512만큼 쓰는 것을 알 수 있습니다.
그렇다면 개발자 도구를 키면 어떻게 문제가 생기는지 말씀드리겠습니다.
개발자도구를 키면 보다시피 전체 CPU 사용량이 27퍼센트로 늘고 메모리 사용량은 지속적으로 증가하여 1000을 넘는 것을 발견할 수 있었으며
메모리 사용량은 계속 늘어난다는 사실을 관찰할 수 있었습니다.
nwjs(9)부분에서 개발자 도구에 해당하는 맨 아래쪽을 보면 이상하게 메모리 사용량이 많다는 것을 발견할 수 있습니다.
하지만 특이한 점은 다음과 같습니다.
그건 바로 게임을 킨 뒤 개발자 도구를 키고 개발자 도구를 여러 창들 중에서 맨 위로 올릴 경우 메모리 사용량은 증가하지 않았습니다.
하지만 다시 게임을 여러 창들 중에서 맨 위로 올린다면 똑같이 메모리 사용량이 증가했습니다.
그럼 이제 제가 가져온 자료들은 다음과 같습니다.
일단 먼저 JS HEAP 그래프와 Node 그래프입니다.
이상하게 검사를 시작하면 메모리 사용량이 떨어져서 괜찮게 나오는지는 모르겠는데
제가 봤을 때는 괜찮아 보이지만 혹시 모르니까 가져왔습니다.
다음은 스냅샷 비교한 것입니다.
대충 뭐가 많이 나오기는 하는데 제가 어느정도 살펴본 결과 제가 건드린 것 없는 것 같았습니다.
더 필요하신 사진 있으시면 가져올테니 말해주시면 감사하겠습니다.
그리고 이건 제가 생각하기에 가장 단서가 될 것 같은 스냅샷입니다.
아까 위에서 말한 개발자 도구를 창들 중에서 맨 위로 올렸을 때 찍은 그래프 스냅샷입니다.
이 경우 파란색 바가 회색바로 돌아오면 정상적인 것인데
대부분 회색바로 돌아오고 튀어나온 한개의 파란색 바도 제가 건드린 것이 아니라서 문제는 없을 것 같습니다.
하지만 만약에 게임 창을 창들 중에서 맨 위로 올리면 다음과 같은 문제가 발생합니다.
게임 창을 맨 위로 올린채로 스냅샷을 찍자 위에 보이는 것처럼 파란색 바가 회색바로 전부 돌아오지 않으며
또한 이 현상이 지속적으로 나타나는 것을 알 수 있습니다.
아마 이것이 현재 가지고 있는 문제를 보여주는 것이라고 저는 생각합니다.
그러니 관련된 정보가 필요하다면 더 가져오겠습니다.
또한 이건 개인적인 의견인데
제가 방금 말한 문제의 스냅샷 그래프를 조사하는 동안 문제가 있다고 나온 부분입니다.
이건 알만툴의 스크립트 기능을 이용한 것과 관련이 있는데
알만툴에서 스크립트 기능을 이용해서 뭔가를 쓰면 그걸 코드로 바꿔서 실행시켜줍니다.
한마디로 문자열을 주면 그걸 코드로 바꿔서 실행시켜주는 것이죠
근데 이건 진짜진짜 개인적인 추측인데 알만툴이 문자열을 코드로 어떻게 바꾸는지 찾아보니 eval()을 쓰더라고요.
그런데 이 eval이 문제가 많은 코드라고 알고 있어서 어쩌면? 이 eval이 문제를 일으키는 것이 아닐까 생각이 듭니다.
물론 제 얄팍한 지식만으로 도출해낸 추측이니 너무 귀담아 듣지 않으셔도 됩니다.
글에 문제가 있다면 알려주세요
논리적으로 한번 생각을 해봐... RPG MZ 는 인제 5년 넘은 툴이고 문제를 방치하고 있단 소린데 그 많은 출시작들 다 문제를 안은 상태로 개발했고 문제가 포함된채로 출시되었다 이소리임?
수많은 개발자와 엔드유저들이 있고 돈받고 팔아온 게임들도 많은데 니가 지적하는 문제에 대한 해결책이 없다고? 그러면 애초에 니가 지적하는건 아무도 신경 조차 안쓰는... 문제 조차 아니지 않을까? 지금 니가 만드는 상황은 엔드유저는 겪을일이 없는 상황이라는건 둘째치고 메모리를 뭔 먹어치우면 없어지는 재화처럼 얘기하는데... 걍 껏다키면 끝이잖아?