2014�N03��30��

JavaScript�̃��������[�N��10�{���Ŕ�������

Leak

���������[�N�B�ꌾ�Ńv���O���}�����ɒǂ���鋰�|�̌��t�BC/C++�̐��E�ł�malloc�����̂�free���Ȃ��Ƃ��̃P�A���X�~�X�ł悭�N���Ă������ł��B���̌�A�K�x�[�W�R���N�^���|�����Ă����v���O���~���O���ꂪ�����A�ꕔ�̌���ŏz�ŽQ�ƂɋC���‚��邮�炢�ł��܂�C�ɂ��Ȃ��Ă��ǂ��I�ȕ����ɂȂ��Ă��܂��B

�Ƃ������̂́A�����Ƃ������Ă��Ȃ��Ȃ��󋵂������Ă��Ă��܂��B�N���E�h�̃X�P�[���A�E�g�u�[������i���Ƃ������R���f�B�e�B�����Ago����ōĂѐ��\������ʂɊ֐S���񂹂�ꂽ��A���{��Erlang�̕׋�����ȂɂȂ�����A�X�P�[���A�E�g����ĂуX�P�[���A�b�v���ʂɘb�肪�ڂ�‚‚���̂������܂��B�����ԉғ��̃T�[�o�ŁA�X�P�[���A�b�v���Ă���ɐ������̃��N�G�X�g���ʂɎ󂯂�悤�ɂȂ�ƁA�����̃��[�N�ł�����ɂȂ�܂��B

�l�͌��݂�node.js��p�ɂɎg���Ă��܂��Bnode.js��V8�̂������ŁA�R���p�C�����ꂩ���ׂ�ƒx����������Ȃ����ǁA���̃X�N���v�g����̒��ł͍����ȕ��ނɓ���܂����A��������܂��܂ȏꏊ�Ŏg���Ă����Ǝv���܂��B���̃G���g���[�ł�node.js�̃��������[�N�̔����̕��@�ɂ‚��ďЉ�܂��B

node.js�̊�{�I�ȃ��������[�N�̔������@

���������[�N�̔����������Ă��Ă���v���́A�N���[�W���Ɩ����֐��ł��B

�K�x�[�W�R���N�^�𓋍ڂ�������̃��������[�N�́A�u�ϐ������������Ă��邽�߂ɁA�����N���c�葱���Ă��܂��v�̂������ł��BChrome�̊J���҃c�[�����g���ƁA���̎��̃I�u�W�F�N�g�̃X�i�b�v�V���b�g���擾�ł��ăN���X���������܂��B�N���X���������܂����A��`�����N���X���g���Ă���ӏ��͉��ӏ����ɍi��邱�Ƃ������̂ŁA��r�I�����ӏ������‚���͓̂���Ȃ��Ǝv���܂��B

��������Ȃ̂́A�N���[�W���ł��B�N���[�W���́A�\���I�Ȃ‚Ȃ���͂Ȃ��Ƃ��A��������Q�Ƃ��Ă���΂��̊O�̕ϐ����L���v�`�����܂��B�N���[�W�����c���Ă���΁A���̃L���v�`������Ă���ϐ����c�葱���܂��B���Ƃ����̕ϐ������[�J���ϐ��ł����Ă��ł��B���ۂɂ��ꂪ�����֐��Ƃ��Ē�`����Ă���΁i���̃P�[�X�������͂��j�A��Փx�͏オ��܂��B��̓I�Ɍ��čs���܂��傤�B

node-webkit-agent�ő��������I�u�W�F�N�g�ꗗ������

node.js�ŃN���[�W�����܂߂����������[�N�𔭌�������@��A�⏕�c�[���Ȃǂ͂����‚�����܂��B���̒��ŁA���낢���r���Ă݂āA�l����ԕ֗��Ɋ������̂��Anode-webkit-agent�ł��B$ npm install node-webkit-agent������A���ۂɃf�[�^����肽���A�v���Ɉȉ��̍s��lj����܂��B

var agent = require('webkit-devtools-agent');

���ɂ��̃A�v�����N�����܂��B�A�v�����N��������AMac�Ȃ�$ kill -USR2 �v���Z�XID�ALinux�Ȃ�$ kill -SIGUSR2 �v���Z�XID�����s���AChrome�ŁA����URL���J���܂��B ����Ȋ����̃y�[�W���J���͂��ł��B

Screen Shot 2014-03-30 at 12.48.32 AM

���׎����Ȃǂ����s���ăq�[�v�̃X�i�b�v�V���b�g����x�Ƃ��āA�ēx���׎����������A���̌�܂��X�i�b�v�V���b�g���B��܂��B

Screen Shot 2014-03-30 at 12.49.36 AM

������Sammary�Ə�����Ă���ӏ����N���b�N����Comparison�ɕύX����ƁA���̃X�i�b�v�V���b�g�Ɣ�r������񂪌����܂��B���ʂ̓N���X���Ƃɐ������ďo���Ă���܂����A�ǂꂾ�������āA�ǂꂾ�������āA�g�[�^���̑������ǂꂭ�炢�����L�^����Ă��܂��B���ꂳ������΃��������[�N�̊m�F�͂ł���͂��I

�����͖≮�����낵�܂���B

Screen Shot 2014-03-30 at 12.50.18 AM

(closure)�Ə����ꂽ���ڂ����Ă݂�ƁA�݂�Ȗ����֐��ł��B�J���Ă݂�ƁA���̒��ŃL���v�`�����Ă���ϐ��������܂����A����ۂǑ��ɂȂ����[�J���ϐ������g���Ă��Ȃ�����A���ۂɂǂ��Ŏ��s����Ă��镶�����ЂƖڂŊm�F���邱�Ƃ��ł��܂���Bshare/script�ƌ��Ă����ƁA��`���ꂽ�t�@�C���͂킩��܂����A�����֐��Ȃ�Ă��̂�1�t�@�C�����ɐ��\�Žg���Ă��邱�Ƃ�����Ȃ̂ŁA����͓���ł��B��{�I�ɂ͓����N���[�W�������‚��c���Ă���΁u����̓��[�N���v�Ɣ��f���₷���̂ł����A�ꍇ�ɂ���Ă͐���𒴂��鑝���ʂɂȂ�̂ɁA�c���[�𖈉�J���Ĕ�r���Ă݂Ȃ��ƕ�����Ȃ����A�J���Ă�������Ȃ����Ƃ���̂ŁA���[�N���Ă��̂��ǂꂩ����肷��ɂ͎��Ԃ��������Ă��܂��܂��B

�����֐��ɂ�add-func-name

�����œo�ꂷ��̂��Aadd-func-name�Ƃ����c�[���ł��B���O�͂������ł����A������ƌ��ʂ��o���z�ł��B���̃c�[�����A$ add-func-name --exclude=test --output=src2 src�̂悤�Ɏ��s���܂��B��������ƁAsrc�ȉ���JS�t�@�C�����p�[�X���āA�����֐������‚��Ă͖��O��lj����܂��B���̃R�}���h���C���ł́A�o�̓t�@�C���Q��ۑ����邽�߂ɕʃt�H���_���w�肵�Ă��܂��B�㏑�����ł��܂����A�ȒP�ɖ߂���悤�ɕʃt�H���_�ɂ��Ă����Ďg���̂��I�X�X���ł��B

���̃c�[���́A�������s�֐��Ƃ��A�I�u�W�F�N�g�\�L�����̊֐���A�ϐ��ɑ������Ă��閳���֐��Ƃ��A���ׂĂ̊֐���T�������܂��Beval�Ƃ��Anew Function�œ��I�ɍ���Ă��Ȃ�����͂��ׂĕϊ�����܂��B����ł͂��̃c�[����K�p���A��قǂ̃X�e�b�v���ēx�J��Ԃ��Ă݂܂��B����ǂ͂ǂ��ł��傤�H

Screen Shot 2014-03-30 at 12.56.18 AM

�֐����ɁA�v���t�B�b�N�X�Ɛ������‚��Ă��܂��B�����͏d���Ȃ��ݒ肳��邽�߁A��ӂɓ���ł��܂��B�f�B�X�N��̃\�[�X�R�[�h��ύX��������̂��߁A�\�[�X�R�[�h��ag�Ƃ����炩�̃c�[���Œ��ׂ�΂��̊֐�����`����Ă���ӏ��������Ɍ��‚���܂��B�c���[���J���ĒT���Ă����̂ɔ�ׂ���A10�{�ȏ�̑����Ń��[�N���Ă���N���[�W���𔭌��ł���ł��傤�B

posted by @shibukawa at 18:31 | TrackBack(0) | ���L ͂ĂȃubN}[N - JavaScript̃[N10{Ŕ
���̋L���ւ̃g���b�N�o�b�NURL
http://blog.sakura.ne.jp/tb/92030639
���u���O�I�[�i�[�����F�����g���b�N�o�b�N�̂ݕ\������܂��B

���̋L���ւ̃g���b�N�o�b�N
�����{�b�N�X

Twitter

www.flickr.com
This is a Flickr badge showing public photos and videos from shibukawa.yoshiki. Make your own badge here.
<< 2019�N02�� >>
�� �� �� �� �� �� �y
          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    
�ŋ߂̋L��
�J�e�S��
�ߋ����O
Powered by ̃uO