티스토리 뷰
출처 : http://blog.naver.com/PostView.nhn?blogId=smd39301&logNo=10155844915
using System.Threading;
Thread[] T1 = new Thread[100];
private void button1_Click(object sender, EventArgs e)
{ // 쓰레드 100개 생성 : 변수 값 넘겨주기 (Class 생성)
for (int j = 0; j < 100; j++)
{
work wk = new work();
wk.l_temp = (j*100);
T1[j] = new Thread(new ThreadStart(wk.ThreadProc));
T1[j].Priority = ThreadPriority.Highest;
T1[j].Start();
}
}
private void button2_Click(object sender, EventArgs e)
{ // 생성된 쓰레드 100개 강제 종료
for (int j = 0; j < 100; j++)
{
T1[j].Abort();
}
Application.Exit();
}
class work
{ // 쓰레드 변수값 받기위한 Class
public long l_temp;
public void ThreadProc()
{
string ConnectStr = "Server=192.168.0.15; database=GAMEDB; user id=admin; password=1111";
MySqlConnection Con = new MySqlConnection(ConnectStr);
MySqlCommand Cmd = new MySqlCommand("usp_ndbTest", Con);
Cmd.CommandType = CommandType.StoredProcedure;
Cmd.Parameters.Add("in_userno", MySqlDbType.Int32);
Cmd.Parameters.Add("in_cnt", MySqlDbType.Int32);
for (long i2 = 1; i2 <= 10000; i2++)
{
for (long j2 = 1; j2 <= 100; j2++)
{
Cmd.Parameters["in_userno"].Value = j2 + l_temp;
Cmd.Parameters["in_cnt"].Value = 10;
try
{
Con.Open();
Cmd.ExecuteNonQuery();
Con.Close();
//Thread.Sleep(500); // 쓰레드 잠시 대기 1/1000 초
}
catch (Exception ex)
{
try
{ // DB 실행오류 남김
FileStream fs = new FileStream("NDB_error_log.txt", FileMode.Append, FileAccess.Write);
StreamWriter sw = new StreamWriter(fs, System.Text.Encoding.UTF8);
sw.WriteLine(DateTime.Now.ToString() + " : " + l_temp.ToString() + " >> " + ex.Source + " - " + ex.Message);
sw.Flush();
sw.Close();
fs.Close();
}
catch
{
// 파일로그 작성 에러는 무시
}
}
}
}
}
}
[출처] 멀티 쓰레드를 이용한 DB 성능 테스트 : C# 소스|작성자 사랑니
'P rogramming > C # (13.05~)' 카테고리의 다른 글
| C# 중복 실행 방지 코드 (0) | 2013.09.13 |
|---|---|
| C# Text 파일 읽어서 출력하는 방식 두 가지. (0) | 2013.09.06 |
| C# htm 으로 된 word 파일 불러오기 (0) | 2013.08.28 |
| thread 정리해야 함 (0) | 2013.08.27 |
| C# string to char, char to string ( 캐릭터, 문자열 변환 ) (0) | 2013.08.26 |
| C# mouseHover 보다는 mouseMove (0) | 2013.08.21 |
| C# 동영상 재생 쉽게 하기 (4) | 2013.08.20 |
| C# 파일 오픈시 적절한 프로그램 선택하여 열기( File Open ) (0) | 2013.08.20 |
- Total
- 331,919
- Today
- 0
- Yesterday
- 89
- PolyBridge1-5
- c#
- 좋은글귀
- PolyBridge1-4
- 리눅스
- PolyBridge
- PolyBridge하는법
- C# 판넬 예제
- 알프스목초지1-4
- 폴리브릿지
- DaleEvans
- PolyBridge1-2
- ted
- C# 패널 예제
- 알프스목초지1-3
- 알프스목초지1-2
- 믿는다는것
- 1Day1Sentence
- 알프스목초지1-1
- 자신만의향
- C# 패널
- Nina Fedoroff
- PolyBridge1-3
- Joseph Redmon
- 알프스목초지1-5
- OnlyICan
- 인생의시간
- 사람의인생
- PolyBridge1-1
- 분할작업
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 2017/08 (4)
