한 번만 실행하는 루틴
Post
원문 보기 →
한 번만 실행하는 루틴
하나의 매매 알고리즘을 만들면서 알고리즘을 하나의 프로시저에 몰아넣다 보니, 곤란한 점이 생긴다. 실시간 시세가 수신될때마다 이 알고리즘을 호출해야 하는 데, 구현된 알고리즘에는 처음 한 번만 실행하는 투자자원배분 루틴이 있다. 그렇다면 알고리즘을 두 개의 프로시저로 분리하는 게 맞다. 하지만 이러다 보니 두 개의 프로시저에서 참조하는 변수를 전역변수로 해야 한다. 전역변수는 되도록 줄이는 게 좋다. 전역변수의 갯수가 많으면 관리하기 어려워 질 수 있다. 이럴 경우 이전의 실행여부를 어디에 저장해두고(보통 워크시트 구석의 어느 셀), 그 정보를 읽어와서 실행여부를 결정할 수 있다. 그런 방법은 이미 흔한 것이라 생략하고 다음과 같이 2가지 방법을 생각해볼 수 있다. 1) Static 사용 보통
Related Posts
3 posts
앱테크 추천 오락 만보기와 일상생활을 통해 포인트 적립
앱테크 추천 오락 만보기와 일상생활을 통해 포인트 적립 생활을 통해 포인트를 적립 받을 수 있는 앱테크 어플! 오락! 여러분들은 이용하고 계시나요? 저는 만보기 앱과 뉴스 읽기, 유튜브 보기, 기타 광고 등을 이용해서 포인트를 적립 받고 있는데요. 이렇게 적립 받은 포인트는 현금처럼 사용할 수 있어 매일매일 잘 이용하고 있습니다. 안드로이드 스마트폰에서 사용 가능한 오락은 OK캐쉬백 포인트로 적립 받을 수 있는데요. 오락에서 적립 받은 OK캐쉬백 포인트 및 내역은 OK캐쉬백 앱에서도 확인이 가능하다고 합니다. 이번에 오락 v1.9.0으로 업데이트되면서 오락 앱의 리워드가 확대되었다고 하는데요. 오락 사.......
[리눅스커널] 워크큐: 워크 실행의 출발점인 worker_thread() 함수 분석
워커 스레드가 깨어나면 스레드 핸들러인 worker_thread() 함수가 실행됩니다.worker_thread() 함수는 워커 스레드를 종료하거나 생성하는 기능을 수행하지만 핵심 동작은 워크를 실행하는 것입니다. 이번 소절에서는 worker_thread() 함수에서 워크를 실행하는 동작에 초점을 맞춰 분석하겠습니다. worker_thread() 함수 세부 동작은 다음 워커 스레드 절에서 상세히 다룹니다. 다음은 worker_thread() 함수에서 워크 실행에 관련된 코드 조각입니다.[https://github.com/raspberrypi/linux/blob/rpi-4.19.y/kernel/workqueue.c]01 static int worker_thread(void *__worker)02 {03
[리눅스커널] 워크큐(Workqueue) - 딜레이워크(delayed_work)는 어떻게 실행하나?
딜레이 워크를 실행하려면 어떤 함수를 호출해야 할까요? schedule_delayed_work() 함수를 실행하면 됩니다. 먼저 딜레이 워크를 실행하는 드라이버 코드를 예제로 열어 보겠습니다.[https://elixir.bootlin.com/linux/v4.14.43/source/drivers/mmc/host/bcm2835.c#L651]1 static2 bool bcm2835_send_command(struct bcm2835_host *host, struct mmc_command *cmd)3 {...3 if (!cmd->data && cmd->busy_timeout > 9000)4 timeout = DIV_ROUND_UP(cmd->busy_timeout, 1000) *



