nezy의 blog  
Front Page
| Wiki | Guestbook | Admin | Write Article   
 
cStringIO 의 배신
buffer 로 쓸만한 것 만들어보려고 cStringIO 를 사용해 보았다. 메모리가 일정 이상이 되면 새로 메모리를 잡으려고 cStringIO 의 truncate(0) 를 호출했다. (요건 옛날에 혜식이형도 속았댔다 -ㅇ-;)

별 문제 없이 잘 돌길래 잘 쓰고 있는데.. 다른 거랑 성능 비교할 일이 생겨서 좀 많이(10만번 정도) 호출해보았다. 헛 이럴 수가 메모리가 샌다!!! -ㅇ-;; 190 메가까지 커진 버퍼를 망연자실 바라보다 알아보니 seek(0,0) 을 해주어야 한단다.(혜식이형 땡큐;) truncate(0) 를 그냥 호출하면 그 때 파일 포인터의 위치에서 truncate 한댄다;

하아.. 배신이다; (레퍼런스에 좀 자세히 적어주지.. -_-;)

@
제목이랑은 다른 얘기지만 list 의 앞에서 pop 하면 list 를 모두 복사한단다. list 로 버퍼 구현하긴 글렀군;

@
string 이 += 에 워낙 최적화가 되어 있어서 무시무시한 성능을 보여줬다. 내가 만든 buffer 의 약 3배? buffer 왜 만들었냐.. ㅠoㅠ;
아.. 근데 같은 string 으로 계속 test 하면 interned string 이 되어(spell 맞나?;) 메모리에 cache 되기도 한단다; random 하게 string 을 만들어내서 다시 테스트 해봐야 겠다.
Track this back : http://nezy.net/blog/trackback/17
Commented by at 2005/05/04 11:02  r x
음훼훼훼...
Commented by 주현성 at 2005/05/08 01:06  r x
딴 이야기 같지만 Document 되있지 않은 feature라면 구현 or 버젼마다 달라질 수 있지 않나요?

@ 룸메가 VC++버젼에 따라 stl::vector의 메모리 할당, 반환이 약간 다르다고 그러더라구요.
Commented by nezy at 2005/05/09 00:09  r x
달라지긴 하는데 그렇게 자주 바뀌진 않죠 '-';

name    password    homepage
 hidden


nezy의 개인 blog 사이트입니다.
BLOG main image
 Recent Entries
노무현 전대통령 영상 (2)
귀여워서 피식2 (1)
귀여워서 피식
안들려요 (5)
병훈이 추천 애니 (1)
 Category
전체 (109)
잡담 (55)
모음 (6)
기술 (6)
나무 껴안기 (1)
슬래시닷 (17)
 Calendar
«   2024/11   »
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
 Recent Comments
비아그라 부작용 사례 http..
후불제 - 2020
비아그라 부작용 사례 http..
후불제 - 2020
정품 비아그라 후불제 파는..
정품 - 2019
정품 비아그라 후불제 파는..
정품 - 2019
Open the wrapper, light t..
looking - 2019
 Link Site
Avenante
KLDP
OpenLook :: 이야기
Python 마을
SBTM
Wiki
개인 홈페이지 한샘이
 Visitor Statistics
Total : 1508814
Today : 715
Yesterday : 80
rss