Microsoft MVP성태의 닷넷 이야기
1초에 5회 함수호출 제한 관련 질문입니다. [링크 복사], [링크+제목 복사]
조회: 2327
글쓴 사람
아스파넬
홈페이지
첨부 파일
 
서버에서 트래픽 제한같은걸 걸어놔서 1초에 5회까지만 함수 호출(사용)을 해야 합니다. C# 내에서 이를 구현하려고 하는데 좀 어려워서 질문 드립니다.

함수1(인자1, 인자2, 인자3)

함수2(인자1, 인자2, 인자3, 인자4, 인자5)

함수3(인자1, 인자2)

대충 이렇게 있다고 했을때, 함수종류에 관계없이 1초안에 12번을 실행명령을 했다면 제한이 걸리니 1초안에 5개(명령)를 보내고, 다음 함수 5개를 1초뒤에 보내고.. 나머지2개를 2초뒤에 보내는 겁니다.
[0.12, 0.20, 0.31, 0.52, 0.78] ◀0~1초
[1.00, 1.21, 1.42, 1.53, 1.79] ◀1~2초
[2.13, 2.45 ]... ◀2~3초
              

대충 이런식입니다. 1초에 0건을 실행할수도 있으니 시간이 좀 밀려도 실행만 정상적으로 된다면 문제가 없을것 같습니다. 함수당 걸리는 시간은 0.1~0.2초내로 짧고요.ㅣ
Main Thread(메인폼)에서는 실시간으로 Data를 받아서 form을 갱신하고 있습니다.

Thread를 추가해서 해볼려고 했는데 Thread가 종료되기도 전에 다른함수를 실행해서 대기하는동안 form이 먹통되는 문제가 생기더라구요.

Main Thread에 영향을 주지 않고 순차적으로 1초에 5개씩 명령을 실행하게 하는 방법이 있을지 문의드립니다.








[최초 등록일: ]
[최종 수정일: 3/15/2020]


비밀번호

댓글 작성자
 



2020-03-15 06시33분
간단한 재현 프로젝트를 올려주세요. 그리고 "Thread가 종료되기도 전에 다른 함수를 실행해서 대기하는 동안 form이 먹통"되는 식의 문제는 원칙적으로 말이 안 되는 문제입니다. 스레드에 대한 이해가 아직 부족해서 잘못 사용한 것일 텐데 질문하신 분이 그런 부분을 어떻게 구현했는지 나타낼 수 있는 간단한 재현 코드를 올려주세요.

재현 프로젝트 구성 방법은 다음의 글을 참고하시면 됩니다.

재현 가능한 최소한의 예제 프로젝트란? - 두 번째 예제
; https://www.sysnet.pe.kr/2/0/12181


정성태

1  2  3  4  5  6  7  8  9  10  [11]  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5399Wpf개발중10/21/20202352Binding 된 항목의 갱신 시 간헐적 끊어짐 발생 문제. [2]
5397나그네10/15/20202079.net Core 3.1 에서 Entity Framework 와 ADO.NET 선택에 관해 여쭤봅니다. [2]
5396여정욱10/15/20202160CLR heap 관련 질문 2 [2]
5395여정욱10/14/20202489CLR heap 관련 질문 [2]
5394진우10/12/20204702닷넷코어 (닷넷5) winform wpf는 리눅스/맥에서도 가능한가요? [2]
5393김세용9/23/20203030C#에서 대량의 클래스를 빠르게 생성하는 방법이 없을까요? [6]
5392전경호9/22/20202368WPF에서 WindowsFormsHost의 메모리 누수 문제 때문에 문의드립니다. [1]파일 다운로드1
5391민성9/22/20202433안녕하세요 항상 감사드립니다. 하나 질문 드리겠습니다. [1]
5390alower9/18/20203341System.AccessViolationException 보호된메모리 부분 예외처리 [1]
5389C# 8.0 구매자9/18/20202714후위 증감 연산자 오버로딩 방법 좀 알려주세요 [4]
5388영귤9/17/20202937Nullable reference type 에 Non-nullable reference type 을 대입해도 경고가 발생하지 않습니다. [2]
5387하태9/17/20202565안녕하세요! 비동기 통신과 관련하여 질문하나만 드리겠습니다! [3]
5386박민웅9/16/20203026정성태 스승님 안녕하세요 !! [1]
5385영귤9/12/202023023항 연산자에 ref 지원? [1]
5384손님9/10/20202048시작하세요! C# 8.0 프로그래밍 책에 오타가 있는 것 같습니다. [3]
5383민성9/8/20202775안녕하세요 자주 도움을 주셔서 감사드립니다. WPF에서 크롬 브라우저 삽입에 대하여 [1]
5382정씨9/4/20202834[C#] 시리얼통신 수신된 데이터를 그리드뷰에 뿌르는데 일정 시간이 지나면 버벅 거리는 이유가 뭘까요?? [3]
5381질문 있어요9/4/20202747웹으로 사용하는 c#과 응용프로그램으로 사용하는 c#이 많이 다른가요?? [2]
5380yeon9/3/20202477winform 의 datagridview는 바인딩이 안 되나요? [1]
5379손님9/2/20203103시작하세요! C# 8.0 프로그래밍 책에 오타가 있습니다. [3]
5378net9/2/20202595mes 응용프로그램을 .net 웹폼으로 만들기도 하나요? [2]
5377net9/2/20202420.net 사용한 웹폼으로 응용프로그램을 만들경우 [1]
5376영귤9/1/20202652nullable 타입간의 비교연산은 그냥 가능한 건가요? [1]
5375영귤8/30/20203494이벤트와 델리게이트의 차이가 궁금합니다. [2]
5374손님8/27/20203402시작하세요! C# 8.0 프로그래밍 책에 오타가 있습니다. [1]
5373agj8/26/20202497System.Single::ToString()함수의 IL코드를 보았는데 ldnull, throw가 전부입니다. 왜 이렇게 짧죠? [2]
1  2  3  4  5  6  7  8  9  10  [11]  12  13  14  15  ...