묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨코틀린 코루틴 완전 정복
coroutineScope 관련 질문 및 실제 사용 사례에 대한 질문
안녕하세요. 강사님 강사님 덕분에 코루틴에 대한 이해도가 많이 높아져서, 최근 코루틴을 활용한 비동기 서버 구현에 대해서 재밌게 개발을 하고 있습니다. (코루틴이 재미는 있는데, 비동기라는 개념 때문에 너무 어려워서 머리가 아프네요 😢) spring webflux와 코루틴을 활용한 서버 개발을 하다보니, 자연스럽게 suspend 키워드가 많이 사용되고 일시 중단 함수에 대해서 조금 더 높은 이해도가 필요해서 이에 대해서 몇가지 질문을 하려고 합니다. 1.저는 강사님의 일시 중단 함수 관련 강의를 듣고 일시 중단 함수란 그냥 일시 중단 지점을 포함할 수 있는 특이한 함수,suspend 함수에서 코루틴을 사용하기 위해서는 coroutineScope을 사용하자이렇게 이해를 했어서 다음과 같이 코드를 짰습니다.class SuspendRequestTest { @Test fun suspendRequestTest() = runBlocking { val startTime = System.currentTimeMillis() // 시작 시간 기록 println("suspendRequest start") anotherSuspendFunction1() // suspend function 1 호출 anotherSuspendFunction2() // suspend function 2 호출 println("suspendRequest end") val endTime = System.currentTimeMillis() // 종료 시간 기록 println("suspendRequest elapsed time: ${endTime - startTime} ms") // 경과 시간 출력 } private suspend fun anotherSuspendFunction1() = coroutineScope { println("anotherSuspendFunction1 start") launch { println("anotherSuspendFunction1 extra logic start") delay(1000) println("anotherSuspendFunction1 extra logic end") } println("anotherSuspendFunction1 end") } private suspend fun anotherSuspendFunction2() = coroutineScope { println("anotherSuspendFunction2 start") launch { println("anotherSuspendFunction2 extra logic start") delay(1000) println("anotherSuspendFunction2 extra logic end") } println("anotherSuspendFunction2 end") } }// 실행 로그 suspendRequest start anotherSuspendFunction1 start anotherSuspendFunction1 end anotherSuspendFunction1 extra logic start anotherSuspendFunction1 extra logic end anotherSuspendFunction2 start anotherSuspendFunction2 end anotherSuspendFunction2 extra logic start anotherSuspendFunction2 extra logic end suspendRequest end suspendRequest elapsed time: 2037 ms제 예상대로라면 1초가 살짝 넘는 시간으로 작업이 완료되어야 하는데, 해당 작업은 2초가 걸리는 작업이었습니다. (로그도 항상 1번이 먼저 나타납니다.)1-1) 혹시 coroutineScope은 내부의 코드가 완료되기 전까지는 다음으로 넘어가지 않는 Blocking 속성을 가지는 함수일까요 ?1-2) supervisorScope도 coroutineScope 처럼 내부의 코드가 완료되기 전에는 다음으로 넘어가지 않는다고 알면 될까요?1-3) 일시 중단 함수가 여러 일시 중단 함수들을 내부 로직으로 가지는 경우, 순차적으로 각각의 일시 중단 함수가 끝나야지만 다음 일시 중단 함수가 실행되는 걸까요 ?2.제가 실제 코루틴 사용 사례 및 코드를 많이 보지 못해서, 어떻게 쓰는게 좋은 케이스 인지 이해도가 낮은 것 같습니다. 보통 coroutineScope 혹은 supervisorScope함수들은 어떤 경우에 어떤 목적을 위해 주로 쓰이는 걸까요 ??coroutineScope의 속성이나 특징에 관해서 추가적으로 제가 알아야 하거나 참고하면 좋을 자료가 있을까요?? 😊
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
예외 분류와 문서화의 의미
안녕하세요. 강사님 강의내용을 좀 더 눈에 들어오게 만들고 싶어 아래와 같이 표로 정리했습니다. 두 가지 질문이 있습니다.질문1) 표로 분류한 것처럼 한 체크예외에 복구가능/복구불가 , 한 언체크예외에 복구가능/복구불가 분류가 가능한가요?체크예외복구 가능한 예외복구 불가능한 예외언체크예외복구 가능한 예외복구 불가능한 예외 질문2) 언체크예외 특징을 위 표로 정리를 했음에도 강의에서 문서화를 강조하신 이유를 파악하지 못했습니다.개발자가 개발당시 미래에 실행중에 어떤 런타임예외가 발생할 지 모르기 때문에 즉, 런타임예외 모든 경우의수를 예측하기 어렵기 떄문에 '처리'를 하지 못한다고 이해해도 될까요? 따라서 운영중에 마주하게 되는 런타임예외들을 매 순간마다 문서에 기록해두라는 말씀이신지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
8회 기출 작업형1 문제3번 minmax 스케일링 , 스탠다드스케일링 질문
8회 기출에서 민맥스 스케일링 풀이에서는 from sklearn.preprocessing import MinMaxScalerscaler=MinMaxScaler()민맥스스케일러를 스케일러로 받아와서 풀이하잖아요 전~에 앞쪽에서 풀이 해주신 코드로 외워서 저는from sklearn.preprocessing import minmax_scale로 바로df['특정컬럼']=minmax_scale(df['특정컬럼'])이렇게 하는게 더 쉬워서 이걸로 외워져서 풀었는데 혹시 스탠다드 스케일링도 저렇게 바꿔 쓰는 import 가 있나요!? ㅜㅜ from sklearn.preprocessing import StandardScalerscaler=Standardscaler()df[' ']=scaler.fit_transform(df[[' ']]) 이렇게 sclaer 로 받아오는 풀이밖에 없나용 ㅠㅠimport 뒤를 살짝씩 바꿔봐도 다 오류가 뜨네요 ㅜ ㅜ
-
미해결
html css javascript
html css javascript html css javascript아이콘넣는법 알려주세요제가 아이코넣는법 까먹엇습니다ㅠㅠ
-
미해결Flutter로 SNS 앱 만들기
마치면서 에러가 댓글가져오기와 좋아요 리스트 가져오기 에러
마치면서.. 에러가 댓글가져오기와 좋아요 리스트 가져오기 에러.두개가 에러 발생되어 해결방법을 몰라서 강사님의 깃을 다운받아서 댓글과 좋아요 에러 나는 곳을 확인하니 제가 누락된 코드인지 추가된코드인지 알수는 없지만 에러가 많아서 접어두고, 강사님 코드로 돌려보았으나 이런창이 뜨네요. 완성은 하고싶은데..어렵네요..어떻게 해야할지..?혹시나 싶어서 적어봅니다dart 3.5.4flutter 3.24.5Android Studio Ladybug | 2024.2.1 Patch 2
-
미해결
c++,c# wpf 강의추천부탁드립니다
안녕하세요 c++,c# wpf 프로젝트-ㅁx 클릭 하는거자기로고 넣는법강의듣고싶어요 알려주세용
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
시험환경에서 세션종료
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요코랩에서는 제대로 돌아가는 코드를 시험환경에 넣었더니 실행시간 1분이 넘어 세션이 종료됩니다ㅠ잘못된 부분이 있는지, 혹시 시험시간에도 이런 상황이 생긴다면 해결방안 있을까요?import pandas as pd train = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/main/p2/heart/2files/train.csv") test = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/main/p2/heart/2files/test.csv") # train = pd.read_csv("train.csv") # test = pd.read_csv("test.csv") #train.shape, test.shape #((242, 15), (61, 14)) #train.isnull().sum() #결측치 없음 y_train = train['output'] train = train.drop(['id', 'output'], axis=1) test_id = test.pop('id') #train.shape, test.shape #((242, 13), (61, 13)) n_cols = train.select_dtypes(exclude='O').columns c_cols = train.select_dtypes(include='O').columns n_train = train.select_dtypes(exclude='O').copy() c_train = train.select_dtypes(include='O').copy() n_test = test.select_dtypes(exclude='O').copy() c_test = test.select_dtypes(include='O').copy() #스케일러 from sklearn.preprocessing import StandardScaler Scaler = StandardScaler() n_train[n_cols] = Scaler.fit_transform(n_train[n_cols]) n_test[n_cols] = Scaler.transform(n_test[n_cols]) #인코딩 from sklearn.preprocessing import LabelEncoder LE = LabelEncoder() for col in c_cols: c_train[col] = LE.fit_transform(c_train[col]) c_test[col] = LE.transform(c_test[col]) #합치고 검증데이터 분리 X_train = pd.concat([n_train,c_train], axis=1) X_test = pd.concat([n_test,c_test], axis=1) #X_train.shape, X_test.shape #((242, 13), (61, 13)) from sklearn.model_selection import train_test_split x_tr, x_val, y_tr, y_val = train_test_split(X_train, y_train, test_size=0.15, random_state=2024) from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier() model.fit(x_tr,y_tr) y_val_pred = model.predict_proba(x_val) from sklearn.metrics import roc_auc_score score = roc_auc_score(y_val,y_val_pred[:,1]) #print(score) #0.9092261904761905 pred = model.predict_proba(X_test) df = pd.DataFrame({ 'id': test_id, 'output': pred[:,1] }) df.to_csv('010100.csv', index=False)
-
미해결
Java 자바 설치도와주세요
Java 자바 설치 도와주세요 Swift Kotlin
-
해결됨디지털 회로설계 실무 : Computer Architecture 와 SoC 프로토콜 Digital IP 설계하기
SRAM 시뮬레이션 결과가 이상해서 질문드립니다.
안녕하세요. sram 소스 코드를 위처럼 작성해봤는데,mem에 저장이 안돼서 read도 제대로 안되고 아래처럼 시뮬레이션 파형이 나옵니다.테스트벤치는 주신 자료대로 작성했고 소스코드만 제가 작성해봤는데, 주신 소스코드랑 비교해봤을 때도 크게 다른 부분을 모르겠어서요.코드의 어느 부분이 잘못됐는지 알려주시면 감사하겠습니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
9회차 시험환경
9회차부터corr, sum,mean 함수사용하면, (numeric_only=True)라고 적어줘야 한다는 말씀이신가요??sum,mean,corr말고 또 어떤 함수에 적어줘야하나요??
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
Rest 로그인 후 403 오류
Rest 방식 로그인 하였을 때 유저정보를 불러오지를 못합니다.로그인 하였을 때 로그 filerChainrestFilterrestcontroller@AuthenticationPrincipal 에 담긴 정보
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
라벨인코딩 질문 및 cols 변수 담을 때 질문입니다
안녕하세요 라벨인코딩 시 질문이 있어 글 남깁니다.첫번째질문cols에 select_dtypes()로 컬럼명 담을 때,cols = train.select_dtypes(include='object') cols = train.select_dtypes(include='object').columns for col in cols: le = LabelEncoder() train[col] = le.fit_transform(train[col]) ... ...첫 번쩌 cols와 두 번째 cols 중 둘 다 상관 없나요? 아니면 두 번째로 해야 하나요?? 두번째질문그리고 (아직까진 시험에는 나온 적은 없는 걸로 압니다만)train.describe(include='object')이처럼 범주형 변수 유니크 값 확인 시, train과 test의 유니크 값이 다르면 라벨인코딩을 진행하는 것으로 알고 있는데요. 어쩔 땐 concat으로 합치고 후 원핫인코딩 후 다시 분리하라고 하는데, 그냥 유니크 값이 다르면 라벨인코딩 진행을 바로 하면 될까요? 강사님 강의 중 concat 사용하는 부분이 있었던 것 같은데 못 찾고 있어서 질문 남깁니다..
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
데이터셋 ID(고유번호) 인코딩 질문
안녕하세요, 강사님!8회 작업형 2 문제에서, customerID 컬럼은 중복된 ID값이 없이 모두 고유한 값이어서 제거를 해도 상관없지만,중복값이 있는 ID는 제거를 하면 안된다고 하셨는데요!그렇다면, 실제 시험에서 중복값이 있는 ID가 나온다면 그 컬럼은 전처리를 하지 않고 그냥 두어도 상관없을까요? 상황1)중복값이 있는 ID컬럼이 'object'값일때제거를 하는게 나을까요? 아니면 int형으로 변환하여 모델학습에 넣어야할까요? 또는 라벨인코딩을 해야하는 것일까요? 상황2)중복값이 있는 ID컬럼이 'int/float'값일때제거하는게 나을까요? 라벨인코딩을 할 필요가 없으니 그냥 두어도 괜찮을까요?
-
미해결태블로 지도 시각화, 기초부터 고급까지
Tableau Public V-World 지도
안녕하세요. 지도 시각화 결과를 Public에 올려봤는데요. 태블로 Default 배경맵은 Public에서 제대로 나오는데, V-World 지도를 배경맵으로 적용한 경우는 배경맵은 나오지 않고 분석한 결과만 나오고 있습니다. 이게 맞는 건가요? 해결방법은 어떻게 되나요?
-
해결됨[2025]빅분기 실기! 최신 기출 풀이로 한 방에 합격하기(파이썬)
2유형 train_test_split 관련 질문드립니다!
안녕하세요, 강사님.2유형 train_test_split 관련 질문이 있어 글 적습니다. 제가 깊은 이해보다는 2유형에서 기본만 확실하게 해서 40점을 얻는 것이 목표입니다.그래서 랜덤 포레스트 모델로 기본적인 과정만 진행하고 정답을 제출하려고 합니다.불필요 칼럼 제거, 결측치 대체, 라벨 인코딩 정도를 진행한 후train_test_split을 test size 0.2로 할 계획이었습니다. 그런데 생각해보니,train_test_split을 쓰는 이유 자체가 현업의 실제 데이터 분석에서는 test 데이터라는 것이 따로 없으니 기존 데이터를 분할해서 일부는 학습, 일부는 검증을 하기 위해 쓰는 것이라고 이해되는데,빅데이터분석기사 실기 2유형에서는 애초에 학습하라고 준 train 데이터와 검증 예정인 test 데이터를 주는데,왜 굳이 train 데이터를 train_test_split로 분리를 해서 fit시킨 모델로 결과를 제출해야 하는 것인지 이해가 되지 않습니다. 그냥 train 데이터를 분리하지 않고 전부 fit시켜 제출하면 되지 않나요? 저도 여러 커뮤니티에서 관련 글들을 찾아 보았는데, 그렇게 하면 과적합 우려가 있다는 얘기들이 많은데 이 부분에 관련해서 강사님 같은 전문가의 설명이 필요해서 질문드립니다. 애초에 과적합 우려가 있다는 의견들은 test 데이터가 train 데이터와 분포나 이런 것들이 거의 일치한다는 가정이 있어야 하는 것 아닌가요? 그리고 처음 말씀드렸듯이 '빅데이터분석기사 실기 2유형 40점 취득'을 목표로 했을 때,train_test_split(test size 0.2)를 fit한 모델을 제출하는 것이 맞을까요?train_test_split 없이 전체 train 데이터를 fit한 모델을 제출하는 것이 맞을까요?
-
미해결[켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)
퀘스트 관련 질문 드립니다.
안녕하세요. 강의를 보다가 퀘스트 관련해서 몇가지 궁금한 점이 생겨 글을 남깁니다.QuestTask 정보를 string화 해서 DB에 저장하시던데, 저럴 경우 운영적인 측면에서는 이슈가 없을까요? (DB 마이그레이션이라던지)Dialogue의 진행은 클라이언트에서 진행되고 Dialogue가 완료되면 Interaction을 서버로 요청하던데, 이럴 경우 클라에서는 Dialogue가 진행됐지만 서버에서 실패할 수 있는 상황이 생길 것 같은데요. Dialogue 같은 건 원래 클라이언트가 주도적으로 진행을 하나요?일반적인 MMO를 보면 Quest가 완료된 후에 Dialogue가 출력되거나 Npc가 특정 위치로 이동을 하거나 특정 지역으로 Pc가 Teleport를 하는 등 서버에서 동기화를 맞출필요가 있는 일들이 여럿 발생하던데.. 이런 처리는 일반적으로 어떻게 구현 할까요?언제나 좋은 강의 감사드립니다~
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
9강 30:13 에서 빌드 에러 부분입니다.
강의 내용에는 #include Engine/OverlapResult.h" 를 포함하지 않음에도 불구하고 빌드후 에디터 실행까지 이루어지지만, 현재 버전에서는 어째서인지 깃허브 파일에서 추가해놓은 위 헤더를 추가해야만 빌드가 실행이 되는 것으로 보입니다..
-
미해결C# 윈폼_ 응용프로그램 개발
6이벤트 중, 버튼1과 버튼2 연결 에러
강의 내용 중, button1_Click += new System.EventHandler(this.button2_Click); 라고 작성하면 '메서드 그룹'인 'button1_Click'에는 할당할 수 없습니다. 라고 에러가 나오는데 어떻게 해야 하나요?
-
미해결파이썬/장고로 결제 시작하기 (Feat. 아임포트) - 기본편
자동완성기능
코드 작성하실때 자동으로 완성되는? 뒤에 흐리게 이미 작성되어있는 코드들과 섹션3 2번강의에서 4:44 IMP.request_pay함수 작성하실때 밑에 자동으로 예제?같은게 보이는건 어떤기능인가요 너무 편의성이 압도적으로 보여 사용하고싶습니다.
-
해결됨AB 테스트 실무자 완벽 가이드
최소 샘플 사이즈
고정된 베타값이 0.2라는 건가요, 0.8이라는 건가요?앞에서는 0.2였다가 뒤에서는 0.8이라 무슨말인지 헷갈려요 ㅜ