### Question:
ExecutorUtil { public static URL setThreadName(URL url, String defaultName) { String name = url.getParameter(Constants.THREAD_NAME_KEY, defaultName); name = name + "-" + url.getAddress(); url = url.addParameter(Constants.THREAD_NAME_KEY, name); return url; }  static boolean isTerminated(Executor executor); static void gracefulShutdown(Executor executor, int timeout); static void shutdownNow(Executor executor, final int timeout); static URL setThreadName(URL url, String defaultName); static void cancelScheduledFuture(ScheduledFuture<?> scheduledFuture);  }### Answer:
@Test public void testSetThreadName() throws Exception { URL url = new URL("dubbo", "localhost", 1234).addParameter(Constants.THREAD_NAME_KEY, "custom-thread"); url = ExecutorUtil.setThreadName(url, "default-name"); assertThat(url.getParameter(Constants.THREAD_NAME_KEY), equalTo("custom-thread-localhost:1234")); }