�@

.NET TIPS

�������Ԃ𐳊m�Ɍv������ɂ́H�m2.0�̂݁AC#�AVB�n

�f�W�^���A�h�o���e�[�W�@���� �F�M
2006/02/17

�@����R�[�h�̎��s�ɂ����鎞�Ԃ��v���O�����Ōv���������ꍇ�A.NET Framework 1.1�ł�DateTime�\���́iSystem���O��ԁj�ŊJ�n�^�I���̎������擾���ĎZ�o������A��萳�m�Ɍv���������ꍇ�ɂ�Win32API��QueryPerformanceCounter�֐�*�Ȃǂ𒼐ڌĂяo�����肷��K�v���������B

* ���̊֐��𗘗p����ɂ́A�n�[�h�E�F�A��������\�p�t�H�[�}���X�J�E���^���T�|�[�g���Ă���K�v������B���̂��ߌÂ�PC�ł͗��p�ł��Ȃ��”\��������B

�@.NET Framework 2.0�̃N���X�E���C�u�����ɂ́A����QueryPerformanceCounter�֐����x�[�X�ɂ���Stopwatch�N���X�iSystem.Diagnostics���O��ԁj���V�����lj�����Ă���A���m�Ȍo�ߎ��Ԃ��ȒP�Ɍv���ł���悤�ɂȂ��Ă���B

Stopwatch�N���X

�@Stopwatch�N���X�Ŏ��Ԃ��v������ɂ́A���̃C���X�^���X���쐬����Start���\�b�h�A������Stop���\�b�h���Ăяo���������i�C���X�^���X�̍쐬��Start���\�b�h�̌Ăяo�����܂Ƃ߂čs���ÓI��StartNew���\�b�h���p�ӂ���Ă���j�B

�@���̌o�ߎ��Ԃ́AElapsedMilliseconds�v���p�e�B�i�~���b�P�ʁj�AElapsed�v���p�e�B�iTimeSpan�\���̂̒l�j�A��������ElapsedTicks�v���p�e�B�i�^�C�}���݉񐔁j���瓾�邱�Ƃ��ł���B

�@�ȉ���Stopwatch�N���X���g�p�����T���v���E�v���O�����������B���̃v���O�����ł́AThread�N���X�iSystem.Threading���O��ԁj��Sleep���\�b�h�ɂ��1�b�Ԃ����X���[�v���A���̎��ۂ̎��Ԃ��v�����Ă��܂��܂Ȍ`���Ōo�ߎ��Ԃ��o�͂���B

// stopwatch.cs

using System;
using System.Diagnostics;

class StopWatchSample {
  static void Main() {
    Stopwatch sw = new Stopwatch();

    sw.Start();
    System.Threading.Thread.Sleep(1000);
    sw.Stop();

    // �~���b�P�ʂŏo��
    long millisec = sw.ElapsedMilliseconds;
    Console.WriteLine(millisec); // �o�͗�F998

    // TimeSpan�\���̂ŏ����t���\��
    TimeSpan ts = sw.Elapsed;
    Console.WriteLine(ts); // �o�͗�F00:00:00.9984668

    // ������\�ȃ^�C�}�����p�”\��
    Console.WriteLine(Stopwatch.IsHighResolution); // �o�͗�FTrue

    // �^�C�}���݉�
    long ticks = sw.ElapsedTicks;
    Console.WriteLine(ticks); // �o�͗�F2988141812

    // �^�C�}��1�b������̍��݉�
    Console.WriteLine(Stopwatch.Frequency); // �o�͗�F2992730000

    // ���ڍׂȕb��
    double sec = (double)sw.ElapsedTicks
                  / (double)Stopwatch.Frequency;
    Console.WriteLine(sec); // �o�͗�F0.998466888760429
  }
}

// �R���p�C�����@�Fcsc stopwatch.cs
Stopwatch�N���X���g�p����C#�̃T���v���E�v���O�����istopwatch.cs�j

' stopwatch.vb

Imports System
Imports System.Diagnostics

Class StopWatchSample
  Shared Sub Main()
    Dim sw As New Stopwatch

    sw.Start()
    System.Threading.Thread.Sleep(1000)
    sw.Stop()

    ' �~���b�P�ʂŏo��
    Dim millisec As Long = sw.ElapsedMilliseconds
    Console.WriteLine(millisec) ' �o�͗�F998

    ' TimeSpan�\���̂ŏ����t���\��
    Dim ts As TimeSpan = sw.Elapsed
    Console.WriteLine(ts) ' �o�͗�F00:00:00.9984668

    ' ������\�ȃ^�C�}�����p�”\��
    Console.WriteLine(Stopwatch.IsHighResolution) ' �o�͗�FTrue

    ' �^�C�}���݉�
    Dim ticks As Long = sw.ElapsedTicks
    Console.WriteLine(ticks) ' �o�͗�F2988141812

    ' �^�C�}��1�b������̍��݉�
    Console.WriteLine(Stopwatch.Frequency) ' �o�͗�F2992730000

    ' ���ڍׂȕb��
    Dim sec As Double = sw.ElapsedTicks / Stopwatch.Frequency
    Console.WriteLine(sec) ' �o�͗�F0.998466888760429
  End Sub
End Class

' �R���p�C�����@�Fvbc stopwatch.vb
Stopwatch�N���X���g�p����VB�̃T���v���E�v���O�����istopwatch.vb�j

�@TimeSpan�\���́iSystem���O��ԁj�̈����ɂ‚��ẮA�uTIPS�F�b�����uhh:mm:ss�v�`���̕�����ɂ���ɂ́H�v��uTIPS�F�����⎞�ԊԊu�̉����Z���s���ɂ́H�v���Q�l�ɂ��Ă������������B

�@ElapsedTicks�v���p�e�B�ɂ���ē�����u�^�C�}���݉񐔁v�Ƃ́A�v�����Ƀ^�C�}���J�E���g�����񐔂ł���B�^�C�}��1�b�Ԃɉ���J�E���g�ł��邩�́AStopwatch�N���X�̐ÓI�v���p�e�B�ł���Frequency�v���p�e�B����擾�ł���B��L�̃T���v���E�v���O�����ł́AElapsedTicks�v���p�e�B�̒l���AFrequency�v���p�e�B�̒l�Ŋ���Z���邱�Ƃɂ��A��萳�m�ȕb�����Z�o���Ă���B

�@�Ȃ��A�n�[�h�E�F�A�ɂ��T�|�[�g����鍂����\�p�t�H�[�}���X�J�E���^�����p�”\���ǂ�����IsHighResolution�v���p�e�B�ɂ��`�F�b�N�ł���B���ꂪ���p�ł��Ȃ��ꍇ�ɂ́AStopwatch�N���X�͎����I��DateTime�\���̂̋@�\�𗘗p���Ď��Ԃ��v������BEnd of Article

���p�”\�o�[�W�����F.NET Framework 2.0�̂�
�J�e�S���F�N���X�E���C�u�����@�����ΏہF���t�Ǝ���
�g�p���C�u�����FStopwatch�N���X�iSystem.Diagnostics���O��ԁj
�g�p���C�u�����FTimeSpan�\���́iSystem���O��ԁj
�g�p���C�u�����FDateTime�\���́iSystem���O��ԁj
�֘ATIPS�F�b�����uhh:mm:ss�v�`���̕�����ɂ���ɂ́H
�֘ATIPS�F�����⎞�ԊԊu�̉����Z���s���ɂ́H

���̋L���Ɗ֘A���̍����ʂ�.NET TIPS
Stopwatch�N���X�Ŏ��Ԍv�������Z�b�g���čĊJ����ɂ́H
�b�����uhh:mm:ss�v�`���̕�����ɂ���ɂ́H
�����⎞�ԊԊu�̉����Z���s���ɂ́H
�mSilverlight 2�n�^�C�}�𗘗p����ɂ́H
�^�C�}�ɂ���莞�ԊԊu�ŏ������s���ɂ́H�iWindows�^�C�}�ҁj
���̃��X�g�́A�i���j�f�W�^���A�h�o���e�[�W���J������
�����֘A�L���T���V�X�e�� Jigsaw�i�W�O�\�[�j �ɂ�莩�����o�������̂ł��B
generated by

�u.NET TIPS�v


Insider.NET �t�H�[���� �V���L��
  • ��2��@�Ȍ��ȃR�[�f�B���O�̂��߂� �i2017/7/26�j
    �@�����_���ŋL�q�ł��郁���o�̑����Athrow���Aout�ϐ��A�^�v���ȂǁAC# 7�ɂ͈ȑO�����R�[�h���Ȍ��ɋL�q�ł���悤�ȋ@�\����������Ă���
  • ��1��@Visual Studio Code�f�o�b�O�̊�b�m�� �i2017/7/21�j
    �@Node.js�v���O�������f�o�b�O���Ȃ���AVisual Studio Code�ɓ�������Ă���f�o�b�O�@�\�̊�{�́u�L�v���}�X�^�[���悤
  • ��1��@���ĂȃR�[�f�B���O�̂��߂� �i2017/7/19�j
    �@C# 7�Œlj����ꂽ�V�@�\�̒�����A�u���l���e�����\���̉��P�v�Ɓu���[�J���֐��v���Љ��B�����͕�����₷���R�[�h���L�q����̂Ɏg����
  • Presentation Translator �i2017/7/18�j
    �@Presentation Translator��PowerPoint�p�̃A�h�C���B�v���[���e�[�V�������̎����̕t����A������ł̎��^�����A�X���C�h�̖|����s����
��IT���[���}�K�W���@�V������X�^�b�t�̃R���������[���œ͂��܂��i�����j

���ڂ̃e�[�}

Insider.NET �L�������L���O

�{�� ����