안녕하세요. onPartitionRevoked() 메서드에 대한 아래 설명을 보고 몇 가지 의문이 생겨 질문드립니다. "리밸런스가 시작되기 직전에 호출되는 메서드이다. 마지막으로 처리한 레코드를 기준으로 커밋을 하기 위해서는 리밸런스가 시작하기 직전에 커밋을 하면 되므로 onPartitionRevoked() 메서드에 커밋을 구현하여 처리할 수 있다." 수동 커밋 모드(manual commit) 의 경우, "마지막으로 처리한 레코드를 기준으로 커밋"한다는 의미를 어떻게 이해해야 할까요? 리밸런싱이 발생하더라도 이미 poll() 로 받아온 레코드는 그대로 처리할 수 있으니, 레코드 처리 및 커밋은 정상적으로 동작하지 않을까요? 그럼에도 불구하고 onPartitionRevoked() 에서 커밋하지 않으면 ' 커밋을 구현하여 처리할 수 있다' 는 어떤 의미인지 궁금합니다. 오토 커밋 모드(auto commit) 의 경우에는 onPartitionRevoked() 가 어떤 상황에서 필요하게 되는지도 잘 감이 오지 않습니다. 이 경우에도 별도의 처리를 하지 않으면 유실이나 중복이 발생할 수 있다는 의미인지, 혹은 다른 목적이 있는지 궁금합니다.
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
코드팩토리 디스코드에 질문하면 더욱 빠르게 질문을 받아 볼 수 있습니다! [코드팩토리 디스코드] https://bit.ly/3HzRzUM 2장 섹션 기본 ui 학습 : 목소리는 나오나 화면이 아무것도 안보임 - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
utf-8로 지정해서 IO 작업을 하더라도, utf-16인 (char)로 형 변환이 가능한 이유가 궁금합니다. char는 ascii와 호환이 안되지않나요..? StringBuilder content = new StringBuilder(); FileReader fr = new FileReader(FILE_NAME, UTF_8); int ch; while ((ch = fr.read()) != -1) { content.append((char) ch); } fr.close();
- 학습 관련 질문을 남겨주세요. 질문을 상세히 작성하면 더 좋습니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. Job() 생성시에 어떤 경우는 compete을 호출해 주어야 하고 어떤 경우는 아닌 것 같은데 그 상황이 헷깔려서 문의 드립니다. 강의에서는 다음과 같이 설명 합니다. launch나 async 함수를 통해 생성한 job객체는 모든 코드가 실행 되면 자동 완료 되지만 job 생성 함수를 통해 생성한 job 객체는 자동으로 실행 완료 되지 않습니다. 아래 코드에서는 launch 안에서 생성함수를 통해 생성한 job 객체는 자동 완료 되지 않는 것으로 보입니다. fun main() = runBlocking<Unit> { launch(CoroutineName("Coroutine1")) { launch(CoroutineName("Coroutine2") + Job(parent = this.coroutineContext[Job])) { delay(100L) println("[${Thread.currentThread().name}] 코루틴 실행") } } } 하지만 아래 코드에서는 똑같이 생성함수를 통해 생성된 job 객체인데도 자동 완료 되는 이유는 무엇인가요? fun main() = runBlocking<Unit> { launch(CoroutineName("Coroutine1")) { val newJob = Job() launch(CoroutineName("Coroutine2") + newJob) { delay(100L) println("[${Thread.currentThread().name}] 코루틴 실행") } } }
ULCUserFacingExperience::CreateHostingRequest 함수를 설명하시면서 코드블럭 내에 NewObject로 선언한 객체가 GC의 대상이 된다고 하셨는데 언리얼의 NewObject함수는 템플릿 내의 자료형을 힙영역에 할당하는 방식이 아닌건가요? 물론 코드블럭을 벗어나면 스택에 올라가있는 NewObject로 받은 지역변수 포인터는 사라지겠지만 객체 자체가 스택에 남아있어 GC에게 감시되는 방식인지 궁금합니다.
언리얼에는 다른 URL(서버)로 이동하는 것을 Travel 이라고 부른다. 여기서 UWorld::ServerTravel 이란 Server내의 모든 Client들을 해당 URL로 Travel시키는 것이고 APlayerController::ClientTravel 은 혼자 다른 URL로 넘어가는 것이라고 한다. 라고 메모를 했습니다. 강사님께서 ServerTravel은 모든 클라이언트가 다같이 "Map이동"이라고 말씀하셨고 ClientTravel은 "다른데디로 이동" 이라고 말씀하셨는데 그럼 ServerTravel은 서버가 변하지는 않는 것인지 ClientTravel로 맵만 A에서 B로 변경했을때도 데디서버의 변경이 일어나는 것인지 궁금합니다.
토스페이 결제 후 아래 사진과 같은 404에러가 발생합니다. PaymentController의 @RequestMapping("/v1/toss")를 주석 처리 후 실행하면 결제가 정상적으로 이루어집니다. 강의를 잘 따라갔다고 생각했는데 어디서 문제가 발생했을지 알 수 있을까요? Html파일 경로는 "src\main\resources\templates" 입니다.
오랜만에 강의를 전체를 다시 듣고 있습니다만, 아래와 같은 에러에서 벗어나지 못하고 있습니다. 도와 주세요.ㅠㅠ [2025-07-31 18:21:32,067] ERROR [mysql_jdbc_oc_sink_customers_02|task-0] Failing task after exhausting retries; encountered 2 exceptions on last write attempt. For complete details on each exception, please enable DEBUG logging. (io.confluent.connect.jdbc.sink.JdbcSinkTask:124) [2025-07-31 18:21:32,067] ERROR [mysql_jdbc_oc_sink_customers_02|task-0] WorkerSinkTask{id=mysql_jdbc_oc_sink_customers_02-0} Task threw an uncaught and unrecoverable exception. Task is being killed and will not recover until manually restarted. Error: java.sql.SQLException: Exception chain: java.sql.BatchUpdateException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' customers_sinkcustomer_idemail_addressfull_name ) values(1,'testuser_' at line 1 java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' customers_sinkcustomer_idemail_addressfull_name ) values(1,'testuser_' at line 1 (org.apache.kafka.connect.runtime.WorkerSinkTask:616) org.apache.kafka.connect.errors.ConnectException: java.sql.SQLException: Exception chain: java.sql.BatchUpdateException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' customers_sinkcustomer_idemail_addressfull_name ) values(1,'testuser_' at line 1 java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' customers_sinkcustomer_idemail_addressfull_name ) values(1,'testuser_' at line 1 at io.confluent.connect.jdbc.sink.JdbcSinkTask.put(JdbcSinkTask.java:133) at org.apache.kafka.connect.runtime.WorkerSinkTask.deliverMessages(WorkerSinkTask.java:584) at org.apache.kafka.connect.runtime.WorkerSinkTask.poll(WorkerSinkTask.java:334) at org.apache.kafka.connect.runtime.WorkerSinkTask.iteration(WorkerSinkTask.java:235) at org.apache.kafka.connect.runtime.WorkerSinkTask.execute(WorkerSinkTask.java:204) at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:200) at org.apache.kafka.connect.runtime.WorkerTask.run (WorkerTask.java:255) at java.base/java.util.concurrent.Executors$ RunnableAdapter.call (Executors.java:515) at java.base/ java.util.concurrent.FutureTask.run (FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$ Worker.run (ThreadPoolExecutor.java:628) at java.base/ java.lang.Thread.run (Thread.java:829)
코드 수정된 부분 붙여넣기하면서 재학습 중인데, 33강 부터 갑자기 TabBar가 사라지네요 RootLayout에서 Stack부분은 문제가 없는 것 같은데 왜그럴까요 ? https://github.com/lukasdeveloperacc/Study/commit/bbca33bdf8ad62b7240a9ed1d1eb39600965e839 제 커밋 코드입니다
11. 동시성 컬렉션 PDF 13 페이지 당연한 이야기지만 다음과 같이 나누어 작성해도 된다. SimpleList basicList = new BasicList(); SimpleList proxyList = new SyncProxyList(basicList); test(list) 강의 5:40 즈음 나오는 내용입니다. test() 에 proxyList 가 인자로 전달되어야하는데 pdf에는 test(list) 로 작성되어있네요. 감사합니다
안녕하세요. 토큰 관련해서 레디스에 저장하는 게 리프레시 토큰이라고 하셨는데요. 액세스 토큰을 저장 안 하는 건지 궁금합니다. 리프레시 토큰은 액세스 토큰이 만료될 떄 필요하니까 상대적으로 사용 빈도가 낮고 매 요청 시에는 액세스 토큰이 쓰이는 걸로 알고 있어서요. 그렇다면 수시로 검증해야 하는 토큰은 액세스 토큰이 아닐까 해서요. 감사합니다.
.net maui 9.0 환경입니다. hyper 관련 에러가 떠서 강의따라서 갔더니 에러는 더이상 뜨지않았습니다. 하지만 안드로이드로 빌드를 할 시에 빌드만 30분 넘게걸리고 결국 실행되지않았습니다. (안드로이드 에뮬레이터는 실행됨, 하지만 무한로딩) 나중에는 xa0010: 선택한 디바이스가 실행되고 있지 않습니다. 이런 에러가 뜹니다. 이런 경우 어떻게 해야할까요?